Questions tagged «.net»

请勿使用有关.NET Core的问题,而应使用[.net-core]。.NET框架是主要为Microsoft Windows操作系统设计的软件框架。它包括基类库,公共语言运行时(通常称为CLR),公共类型系统(通常称为CTS)和动态语言运行时的实现。它支持多种编程语言,包括C#,VB.NET,F#和C ++ / CLI。

8
LINQ:不是任何人都不是所有人
我经常想检查一个提供的值是否与列表中的一个匹配(例如,在验证时): if (!acceptedValues.Any(v => v == someValue)) { // exception logic } 最近,我注意到ReSharper要求我将这些查询简化为: if (acceptedValues.All(v => v != someValue)) { // exception logic } 显然,这在逻辑上是相同的,也许可读性更高(如果您完成了许多数学运算),我的问题是:这会导致性能下降吗? 感觉像是应该的(即.Any()听起来像是短路,而.All()听起来像不是),但是我没有任何证据可以证明这一点。是否有人对查询是否可以解决相同的问题或ReSharper是否使我误入歧途有更深入的了解?
272 c#  .net  performance  linq  resharper 

5
.NET为什么默认使用银行家四舍五入?
根据文档,该decimal.Round方法使用了舍入舍入算法,这在大多数应用程序中并不常见。因此,我总是最终编写一个自定义函数来执行更自然的舍入算法: public static decimal RoundHalfUp(this decimal d, int decimals) { if (decimals < 0) { throw new ArgumentException("The decimals must be non-negative", "decimals"); } decimal multiplier = (decimal)Math.Pow(10, decimals); decimal number = d * multiplier; if (decimal.Truncate(number) < number) { number += 0.5m; } return decimal.Round(number) / multiplier; } 有人知道这个框架设计决定背后的原因吗? …
271 .net  rounding 

30
TypeLoadException表示“未实现”,但已实现
我的测试机上有一个非常奇怪的错误。错误是: System.TypeLoadException: Method 'SetShort' in type 'DummyItem' from assembly 'ActiveViewers (...)' does not have an implementation. 我只是不明白为什么。SetShort有没有在DummyItem班级,我甚至已经重新编译版本写入到事件日志,只是为了确保它不是一个部署/版本问题。奇怪的是,调用代码甚至没有调用该SetShort方法。

10
结合使用MySQL和Entity Framework
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow 的主题。 10个月前关闭。 改善这个问题 在Google上找不到与Entity Framework / MySQL相关的任何内容,因此我希望有人对此有所了解。

30
接口-有什么意义?
界面的原因确实使我难以理解。据我了解,这是针对C#中不存在的不存在的多重继承的一种解决方法(或者有人告诉我)。 我所看到的是,您预先定义了一些成员和函数,然后必须在类中重新定义它们。从而使接口冗余。只是感觉像语法...好吧,对我而言是垃圾(请不要冒犯。垃圾就像无用的东西一样)。 在下面给出的示例中,该示例是在堆栈溢出时从另一个C#接口线程获取的,我只是创建一个称为Pizza的基类而不是一个接口。 简单示例(来自不同的堆栈溢出贡献) public interface IPizza { public void Order(); } public class PepperoniPizza : IPizza { public void Order() { //Order Pepperoni pizza } } public class HawaiiPizza : IPizza { public void Order() { //Order HawaiiPizza } }
269 c#  .net  interface 


4
实体框架和连接池
我最近开始在.NET 4.0应用程序中使用Entity Framework 4.0,并对与池相关的一些事情感到好奇。 据我所知,连接池是由ADO.NET数据提供程序管理的,在我的情况下是由MS SQL服务器管理的。实例化新实体上下文(ObjectContext)(即无参数)时,这是否适用new MyDatabaseModelEntities()? a)为应用程序创建全局实体上下文(即一个静态实例)或b)使用using块为每个给定的操作/方法创建和公开实体上下文的优缺点是什么? 我应该了解某些特定情况下的其他建议,最佳实践或通用方法吗?


12
是否有用于SQLite的.NET / C#包装器?[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow 的主题。 2年前关闭。 改善这个问题 我有点想在C#.Net中使用SQLite,但似乎找不到合适的库。有一个吗?正式的吗?除了包装器,还有其他使用SQLite的方法吗?
267 c#  .net  database  sqlite 

23
如何在C#中连接两个数组?
int[] x = new int [] { 1, 2, 3}; int[] y = new int [] { 4, 5 }; int[] z = // your answer here... Debug.Assert(z.SequenceEqual(new int[] { 1, 2, 3, 4, 5 })); 现在我用 int[] z = x.Concat(y).ToArray(); 有没有更简单或更有效的方法?
267 c#  arrays  .net  linq 

9
枚举命名约定-复数
我问了这个问题,尽管已经读过类似但不完全是我在C#命名约定中枚举和匹配属性所要的东西 我发现我倾向于将枚举命名为复数形式,然后将其“使用”为单数形式,例如: public enum EntityTypes { Type1, Type2 } public class SomeClass { /* some codes */ public EntityTypes EntityType {get; set;} } 当然可以,这是我的风格,但是没有人能找到这种约定的潜在问题吗?我确实用“状态”一词来命名“丑陋”: public enum OrderStatuses { Pending, Fulfilled, Error, Blah, Blah } public class SomeClass { /* some codes */ public OrderStatuses OrderStatus {get; set;} } 其他信息:也许我的问题还不够清楚。在命名我定义的枚举类型的变量时,我常常不得不认真思考。我知道最佳做法,但这无助于简化命名这些变量的工作。 我不可能将我的所有枚举属性(例如“ …


8
运行多个异步任务并等待它们全部完成
我需要在控制台应用程序中运行多个异步任务,并等待它们全部完成再进行进一步处理。 那里有很多文章,但是我阅读的内容似乎越来越困惑。我已经阅读并理解了任务库的基本原理,但是显然我在某处缺少链接。 我知道可以链接任务,以便它们在另一个任务完成之后开始(这是我阅读的所有文章的场景),但是我希望所有任务同时运行,我想知道一次他们都完成了。 对于这种情况,最简单的实现是什么?


16
nameof的目的是什么?
6.0版具有的新功能nameof,但我无法理解它的用途,因为它只接受变量名,并在编译时将其更改为字符串。 我认为使用<T>时它可能有一些用途,但是当我尝试使用它时nameof(T),只会打印出a T而不是使用的类型。 有什么目的吗?
263 c#  .net  c#-6.0  nameof 

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.