Questions tagged «c#»

C#(发音为“ See Sharp”)是由Microsoft开发的一种高级,静态类型的多范例编程语言。C#代码通常针对Microsoft的.NET系列工具和运行时,其中包括.NET Framework,.NET Core和Xamarin。使用此标记可解决有关用C#或C#正式规范编写的代码的问题。

30
您最喜欢的C#扩展方法是什么?(codeplex.com/extensionoverflow)
已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 让我们列出一个答案列表,在其中发布优秀和最喜欢的扩展方法。 要求是必须张贴完整的代码,并提供示例和使用说明。 基于对该主题的高度兴趣,我在Codeplex上建立了一个名为extensionoverflow的开源项目。 请标记您的答案并接受,以将代码放入Codeplex项目。 请发布完整的源代码,而不发布链接。 Codeplex新闻: 24.08.2010现在,“ Codeplex”页面位于此处:http ://extensionoverflow.codeplex.com/ 11.11.2008 XmlSerialize / XmlDeserialize现在已实现并进行了单元测试。 11.11.2008还有更多开发者的空间。;-) 立即加入! 11.11.2008第三位贡献者加入了ExtensionOverflow,欢迎来到BKristensen 11.11.2008 FormatWith现在已实现并进行了单元测试。 2008年9月11日第二位贡献者加入了ExtensionOverflow。欢迎来到chakrit。 2008年9月11日我们需要更多开发人员。;-) 2008年9月11日ThrowIfArgumentIsNull在现在实现和进行单元测试 Codeplex上。

16
如何以编程方式退出WPF应用程序?
几年来,我一直在使用C#(Windows窗体),但从未使用过WPF。但是,现在我喜欢WPF,但是当用户单击“文件”菜单中的“退出”菜单项时,我不知道如何退出应用程序。 我努力了: this.Dispose(); this.Exit(); Application.ShutDown(); Application.Exit(); Application.Dispose(); 除其他外。没用。
477 c#  .net  wpf  shutdown 



30
如何在C#中为URL建立查询字符串?
从代码调用Web资源时的常见任务是构建查询字符串以包含所有必要的参数。虽然绝对不是火箭科学,但您需要处理一些细微的细节,例如附加&第一个参数(如果不是第一个参数),对参数进行编码等。 要做的代码很简单,但是有点乏味: StringBuilder SB = new StringBuilder(); if (NeedsToAddParameter A) { SB.Append("A="); SB.Append(HttpUtility.UrlEncode("TheValueOfA")); } if (NeedsToAddParameter B) { if (SB.Length>0) SB.Append("&"); SB.Append("B="); SB.Append(HttpUtility.UrlEncode("TheValueOfB")); } } 这是一项如此常见的任务,人们期望存在一个实用程序类,该实用程序类将使其更优雅,更易读。扫描MSDN时,我找不到一个,这使我想到以下问题: 您做上述事情时最优雅的清洁方式是什么?
473 c#  .net  url  query-string 



17
如何反序列化XML文档
如何反序列化此XML文档: <?xml version="1.0" encoding="utf-8"?> <Cars> <Car> <StockNumber>1020</StockNumber> <Make>Nissan</Make> <Model>Sentra</Model> </Car> <Car> <StockNumber>1010</StockNumber> <Make>Toyota</Make> <Model>Corolla</Model> </Car> <Car> <StockNumber>1111</StockNumber> <Make>Honda</Make> <Model>Accord</Model> </Car> </Cars> 我有这个: [Serializable()] public class Car { [System.Xml.Serialization.XmlElementAttribute("StockNumber")] public string StockNumber{ get; set; } [System.Xml.Serialization.XmlElementAttribute("Make")] public string Make{ get; set; } [System.Xml.Serialization.XmlElementAttribute("Model")] public string Model{ get; set; } } 。 …

6
进行单元测试时使用C#“内部”访问修饰符
我是单元测试的新手,我想弄清楚是否应该开始使用更多的“内部”访问修饰符。我知道,如果我们使用“内部”并设置汇编变量“ InternalsVisibleTo”,那么我们可以测试我们不想从测试项目中声明为公共的函数。这使我认为我应该始终使用“内部”,因为至少每个项目(应该?)都有它自己的测试项目。你们能告诉我为什么我不这样做的原因吗?我什么时候应该使用“私人”?
469 c#  .net  unit-testing  tdd 


15
名称“ ConfigurationManager”在当前上下文中不存在
我正在尝试connectionStrings从配置文件访问。代码是ASP.NET + C#。我已经添加System.Configuration了参考,也提到了使用。但是它仍然不接受大会。 我正在使用VSTS2008。您知道是什么原因吗? 另一个奇怪的事情是程序集名称显示为“ System.configuration”,小写的c不会显示其他系统程序集的名称。 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Configuration; namespace Utility { public class CommonVariables { public static String ConnectionString { get { return ConfigurationManager.ConnectionStrings["EmployeeEntities"].ConnectionString; } } } } 配置: <?xml version="1.0" encoding="utf-8"?> <configuration> <connectionStrings> <add name="qbankEntities" connectionString="metadata=res://*/qbankModel.csdl|res://*/qbankModel.ssdl|res://*/qbankModel.msl;provider=System.Data.SqlClient;provider connection string="Data Source=localhost;Initial Catalog=qbank;Persist Security …


5
如何验证Moq中未调用该方法?
如何验证未调用该方法 Moq中未? 是否有类似AssertWasNotCalled的内容? 更新:从版本3.0开始,可以使用新的语法: mock.Verify(foo => foo.Execute("ping"), Times.Never());
466 c#  .net  moq 


12
如何使用LINQ选择具有最小或最大属性值的对象
我有一个具有Nullable DateOfBirth属性的Person对象。有没有一种方法可以使用LINQ来查询Person对象列表中最早/最小的DateOfBirth值。 这是我开始的: var firstBornDate = People.Min(p => p.DateOfBirth.GetValueOrDefault(DateTime.MaxValue)); 空的DateOfBirth值设置为DateTime.MaxValue以便将它们排除在Min考虑之外(假设至少一个具有指定的DOB)。 但是对我来说,所有要做的就是将firstBornDate设置为DateTime值。我想要得到的是与此匹配的Person对象。我是否需要这样编写第二个查询: var firstBorn = People.Single(p=> (p.DateOfBirth ?? DateTime.MaxValue) == firstBornDate); 还是有一种更精简的方法?
464 c#  .net  linq 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.