草庐IT

c# - String.IsInterned 的目的是什么?

在String类中有一个方法IsInterned()。我从不使用这种方法。请帮助我了解此方法的最佳用途。 最佳答案 认为实习是一种优化;它以某些理想品质的降低换取其他品质的提高。特别是实习有以下优点:内存不会浪费在重复的字符串上。已知都被驻留的字符串之间的相等性比较非常快。碰巧被驻留的字符串之间的相等性比较仍然比它们没有被驻留时快得多。在某些情况下,其他比较会带来性能优势。它有以下不好的品质:字符串不经常被垃圾回收(如果有的话),所以可以回收的内存被用在那些再也见不到的字符串上,或者用了很长时间。(实习你所有的字符串,你最终可能会使

c# - 将文件夹从 Windows 资源管理器拖放到 C# 中的列表框

我成功地开发了用于将文件从Windows资源管理器拖动到列表框的C#代码。//DragandDropFilestoListboxprivatevoidlistBox1_DragEnter(objectsender,DragEventArgse){if(e.Data.GetDataPresent(DataFormats.FileDrop,false))e.Effect=DragDropEffects.All;elsee.Effect=DragDropEffects.None;}privatevoidlistBox1_DragDrop(objectsender,DragEventArgse

c# - 绑定(bind) List<string> 到 ComboBox

我希望从我的列表中获取我的组合框项目名称和值当然,我不希望我的View模型包含组合框项目列表。我得到了一个列表a,b,c,d我希望我的组合框有项目我的View模型得到了publicListPropsList{get;set;}我的观点得到了它给了我与PropsList组合:( 最佳答案 Nahum你将不得不使用ItemsSource="{BindingPropsList}",假设PropsList是你代码背后的一个依赖属性,或者更好的是,你的数据上下文中的一个属性实现了INotifyPropertyChanged。在您的情况下,您必

c# - Autofac:注册组件并根据解析父解析

我想注册一个组件,以根据它可能解析的类使用参数进行解析。(这听起来有点令人困惑,所以我将展示一个示例)。这是一个使用记录器的对象:classMyObject:IMyObject{publicILoggerLogger;publicMyObject(ILoggerlogger){Logger=logger;}}现在传入的记录器可能因类而异。所以我对如何在下面做到这一点有一个相当修补的想法:classMyLogger:ILogger{publicstringName{get;protectedset;}publicstaticILoggerGetLogger(stringclassName

c# - Azure 通知中心。 GetRegistrationsByTagAsync(string tag, int top) 的第二个参数代表什么?

documentation在Azure推送通知中说明NotificationHubClient.GetRegistrationsByTagAsync(stringtag,inttop),如下所示,top(Int32):Thelocationwheretogettheregistrations.但我不知道top或location代表什么。Anexample我发现只使用100但没有理由使用它。 最佳答案 基本上这意味着最多获得top记录。因此,如果您有1000个带有标签“A”的注册,则NotificationHubClient.GetR

c# - 在 Dynamic Linq Order By 上保留 NULL 行

我正在使用下面的代码片段来动态排序我的Linq查询并且效果很好。我不擅长反射或复杂的linq查询,但我需要一种方法,当使用升序时,NULL值在最后,反之亦然。因此,如果我的属性名称是一个整数并且列值是1、3、5,则默认情况下所有NULL行都将位于末尾,而不是开头。我可以向这个表达式添加什么来实现它?此代码适用于EntityFramework,但仍需要进行NULL比较。示例list.OrderBy("NAMEDESC").ToList()类publicstaticclassOrderByHelper{publicstaticIOrderedQueryableThenBy(thisIEnu

c# - 如何使用 C# 以编程方式运行 ASP.Net 开发服务器?

我有ASP.NET网页,我想为其构建自动化测试(使用WatiN和MBUnit)。如何从我的代码启动ASP.Net开发服务器?我不想使用IIS。 最佳答案 这是我用过的有效方法:usingSystem;usingSystem.Diagnostics;usingSystem.Web;...//settingsstringPortNumber="1162";//arbitraryunusedport#stringLocalHostUrl=string.Format("http://localhost:{0}",PortNumber);st

c# - 如何从字符串中为深层属性创建表达式树/lambda

给定一个字符串:“Person.Address.Postcode”我希望能够在Person的实例上获取/设置此邮政编码属性。我怎样才能做到这一点?我的想法是用“。”分割字符串。然后遍历各个部分,寻找前一个类型的属性,然后构建一个看起来像这样的表达式树(对伪语法表示歉意):(person=>person.Address)address=>address.Postcode不过,我在创建表达式树时遇到了真正的麻烦!如果这是最好的方法,有人可以建议如何去做,还是有更简单的替代方法?谢谢安德鲁publicclassPerson{publicintAge{get;set;}publicstring

c# - String.Format 计算预期参数的数量

是否可以计算String.Format()字符串中预期参数/参数的数量?例如:“你好{0}。再见{1}”应该返回计数2。我需要在string.Format()抛出异常之前显示错误。感谢您的帮助。 最佳答案 您可以使用正则表达式,例如{(.*?)}然后只计算匹配项。如果您需要处理{0}{0}之类的情况(我想应该返回1),那么这会变得有点困难,但是您总是可以将所有匹配项放在一个列表中,然后在其上执行Linqselectdistinct.我在想类似下面的代码:varinput="{0}and{1}and{0}and{2:MM-dd-yyy

c# - 使用 C# 将 *.lnk 文件固定到 Windows 7 任务栏

即使在Windows7中以编程方式固定图标似乎也是不允许的(就像这里所说的:http://msdn.microsoft.com/en-us/library/dd378460(v=VS.85).aspx),有一些方法可以通过使用一些VB脚本来实现。有人找到了一种在C#中执行此操作的方法,如下所示:privatestaticvoidPinUnpinTaskBar(stringfilePath,boolpin){if(!File.Exists(filePath))thrownewFileNotFoundException(filePath);//createtheshellapplicati