Questions tagged «c#»

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

22
无法更新EntitySet-因为它具有DefiningQuery并且不存在<UpdateFunction>元素
我正在将Entity Framework 1与.net 3.5配合使用。 我正在做这样简单的事情: var roomDetails = context.Rooms.ToList(); foreach (var room in roomDetails) { room.LastUpdated = DateTime.Now; } 我尝试执行此操作时遇到此错误: context.SaveChanges(); 我得到错误: 无法更新EntitySet-因为它具有DefiningQuery,并且&lt;ModificationFunctionMapping&gt;元素中不存在任何&lt;UpdateFunction&gt;元素来支持当前操作。 我正在上下文中进行大量更新,并且没有任何问题,仅当我尝试更新此特定实体时。 我所有的搜索都显示相同的内容,即我要更新的实体上没有声明主键。但是a,我确实声明了主键...


15
我可以向现有的静态类添加扩展方法吗?
我很喜欢C#中的扩展方法,但是将扩展方法添加到静态类(例如Console)并没有取得成功。 例如,如果我想向控制台添加一个名为“ WriteBlueLine”的扩展,以便可以进行以下操作: Console.WriteBlueLine("This text is blue"); 我通过添加一个本地的,公共的静态方法(使用Console作为“ this”参数)来尝试了此操作……但是没有骰子! public static class Helpers { public static void WriteBlueLine(this Console c, string text) { Console.ForegroundColor = ConsoleColor.Blue; Console.WriteLine(text); Console.ResetColor(); } } 这没有向控制台添加'WriteBlueLine'方法...我做错了吗?还是要求不可能?

13
如何使用json.net忽略类中的属性(如果为null)
我正在使用Json.NET将类序列化为JSON。 我有这样的课: class Test1 { [JsonProperty("id")] public string ID { get; set; } [JsonProperty("label")] public string Label { get; set; } [JsonProperty("url")] public string URL { get; set; } [JsonProperty("item")] public List&lt;Test2&gt; Test2List { get; set; } } 我只想在is 时JsonIgnore()向Test2List属性添加属性。如果它不为null,那么我想将其包含在json中。Test2Listnull
529 c#  json.net 

8
锁到底如何工作?
我看到对于使用不是线程安全的对象,我们使用如下锁将代码包装起来: private static readonly Object obj = new Object(); lock (obj) { // thread unsafe code } 因此,当多个线程访问同一代码时会发生什么(假设它在ASP.NET Web应用程序中运行)。他们排队了吗?如果是这样,他们将等待多长时间? 使用锁会对性能产生什么影响?



17
引用.NET 4.0项目中的.NET 2.0混合模式程序集,需要什么“附加配置”?
我有一个项目,我想在其中使用一些.NET 4.0功能,但核心要求是我可以使用针对2.X编译的System.Data.SQLite框架。我看到有可能提及此问题,例如此处接受的答案,但我看不出如何实际实现。 当我尝试在引用2.X程序集的同时尝试运行4.0项目时,我得到: 混合模式程序集是针对运行时的版本“ v2.0.50727”构建的,如果没有其他配置信息,则无法在4.0运行时中加载。 需要什么“附加配置”?

10
使用LINQ来获取一个List <>中的项目,而不是另一个List <>中的项目
我假设有一个简单的LINQ查询可以做到这一点,但我不确定该如何做。 给出这段代码: class Program { static void Main(string[] args) { List&lt;Person&gt; peopleList1 = new List&lt;Person&gt;(); peopleList1.Add(new Person() { ID = 1 }); peopleList1.Add(new Person() { ID = 2 }); peopleList1.Add(new Person() { ID = 3 }); List&lt;Person&gt; peopleList2 = new List&lt;Person&gt;(); peopleList2.Add(new Person() { ID = 1 }); peopleList2.Add(new Person() …
525 c#  linq  .net-3.5 

22
复制C#中目录的全部内容
我想在C#中将目录的全部内容从一个位置复制到另一个位置。 似乎没有一种方法可以在System.IO没有大量递归的情况下使用类。 如果添加对以下内容的引用,则VB中可以使用一种方法Microsoft.VisualBasic: new Microsoft.VisualBasic.Devices.Computer(). FileSystem.CopyDirectory( sourceFolder, outputFolder ); 这似乎是一个非常丑陋的hack。有没有更好的办法?
524 c#  .net  directory  copy 



10
获取应用程序文件夹路径的最佳方法
我看到有一些方法可以获取应用程序文件夹路径: Application.StartupPath System.IO.Path.GetDirectoryName( System.Reflection.Assembly.GetExecutingAssembly().Location) AppDomain.CurrentDomain.BaseDirectory System.IO.Directory.GetCurrentDirectory() Environment.CurrentDirectory System.IO.Path.GetDirectoryName( System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase) System.IO.Path.GetDirectory(Application.ExecutablePath) 根据情况,最佳方法是什么?
514 c#  .net 

14
程序化等效的默认值(类型)
我正在使用反射来遍历Type的属性并将某些类型设置为其默认值。现在,我可以在类型上进行切换并default(Type)显式设置,但我宁愿一行执行。是否有程序等效的默认值?
514 c#  reflection  default 

6
用值初始化C#字典的正确方法?
我正在C#文件中使用以下代码创建字典: private readonly Dictionary&lt;string, XlFileFormat&gt; FILE_TYPE_DICT = new Dictionary&lt;string, XlFileFormat&gt; { {"csv", XlFileFormat.xlCSV}, {"html", XlFileFormat.xlHtml} }; 下面有一条红线new,显示错误: 无法使用功能“集合初始化器”,因为它不是ISO-2 C#语言规范的一部分 谁能解释这是怎么回事? 编辑:好的,事实证明我正在使用.NET版本2。
513 c#  dictionary 

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.