草庐IT

use-mirrors

全部标签

c# - using 会在 null 上工作吗?

如果资源没有实现IDisposable,下面的代码可以工作吗?Tresource=newT();using(resourceasIDisposable){...} 最佳答案 是的。using语句检查它是否被赋予null并避免尝试调用Dispose如果是。来自C#3规范的第8.13节:Ausingstatementistranslatedintothreeparts:acquisition,usage,anddisposal.Usageoftheresourceisimplicitlyenclosedinatrystatementth

c# - Linq 到实体 : using ToLower() on NText fields

我正在使用SQLServer2005,带有区分大小写的数据库..在搜索功能中,我需要创建一个带有“where”子句的LinqToEntities(L2E)查询,该子句使用这些规则将多个字符串与数据库中的数据进行比较:比较是一种“包含”模式,不是严格比较:因为在L2E中允许使用字符串的Contains()方法,所以很容易比较必须不区分大小写:我对两个元素都使用ToLower()来执行不区分大小写的比较。所有这一切都表现得非常好,但我遇到了以下异常:我的字段之一出现“参数数据类型ntext对于下层函数的参数1无效”。该字段似乎是一个NText字段,我无法对其执行ToLower()。我该怎么

c# - 为什么 C# 不允许将 using 变量作为 ref 或 out 传递给函数

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:PassinganIDisposableobjectbyreferencecausesanerror?为什么C#不允许将变量从usingblock作为ref或out传递给函数?这是我的代码:using(Forms=newForm()){doSomthing(refs);}函数在usingblock结束之前结束,为什么C#不让我将s作为ref或out参数传递?

c# - 找不到类型或命名空间名称 'BundleCollection'(是否缺少 using 指令或程序集引用?)

所以,我在C#中有一个MVC4项目,我正在使用VisualStudioForWeb2012Express。由于以下错误,我无法编译项目:找不到类型或命名空间名称“BundleCollection”(是否缺少using指令或程序集引用?)通常,这意味着缺少库。因此,在互联网上快速搜索后,我使用NuGet安装了Microsoft.AspNet.Web.Optimization,但仍然没有用。让我感兴趣的是BundleCollections应该默认为应用程序所知。我只能想象我添加了一个把一切都搞砸了的依赖项,但我真的不能确定。我该如何解决这个问题?我在这里缺少什么?代码:usingSyste

c# - 为什么 C# 设计者要为 'using' 关键字附加三种不同的含义?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭12年前。using关键字具有三种不同的含义:类型/命名空间别名命名空间导入确保调用Dispose的语法糖文档将前两个定义称为指令(我猜这意味着它们本质上是预处理),而最后一个是语句。尽管它们在语法上有所区别,但为什么语言开发人员会通过附加三种不同的含义来使关键字的语义复杂化?例如,(免责声明:在我的脑海中,肯定有更好的例子)为什么不添加像alias和import

c# - 在 C# 中维护 "clean"using 指令列表有什么好处?

我知道VS2008和Resharper一样有用于清除using指令的remove和sort功能。除了您的代码“干净”并消除引用将来可能不存在的namespace的问题之外,维护一个“干净”的using指令列表有什么好处?更少的代码?更快的编译时间? 最佳答案 如果您总是只有您需要的using指令,并且总是对它们进行适当的排序,那么当您比较两个版本的代码时,您永远不会看到不相关的更改。此外,如果您有一组简洁的using指令,那么任何查看代码的人都可以通过查看using指令来粗略了解将要使用的内容。

c# - 为什么 'using' 提高了 C# 性能

在大多数情况下,C#编译器似乎可以自动调用Dispose()。像大多数using模式的情况一样:publicvoidSomeMethod(){...using(varfoo=newFoo()){...}//Fooisn'tuseafterhere(obviously)....}因为foo没有被使用(这是一个非常简单的检测)并且因为它没有作为参数提供给另一个方法(这是一个适用于许多用例并且可以扩展的假设),编译器可以自动并立即调用Dispose(),而无需开发人员要求。这意味着在大多数情况下,如果编译器做了一些聪明的工作,using就毫无用处。IDisposable对我来说似乎低级足以被

macOS 更新Xcode,UE4编译C++报错variable “LayerNames” set but not used -Wunused-but-set-variable解决方案

一、背景本人在一次苹果macOS系统更新(手贱点了一下AppStore里的全部更新)后,发现虚幻引擎UE4.27的C++项目无法编译通过,报错信息为:variable“LayerNames”setbutnotused[-Werror,-Wunused-but-set-variable]constTArray*LayerNames=&LayersExpression->GetLayerNames();经过翻查社区资料:LayerNameserrorbrickingmyMacprojects-Platform&Builds-UnrealEngineForums外加本人亲自验证,得出如下两种适用于不

c# - 在 C# 中使用 "using"关键字

这个问题在这里已经有了答案:Whataretheusesof"using"inC#?(29个答案)关闭8年前。我想知道在C#中“using”关键字有什么用,我是新手..当我们需要使用“使用”关键字时..我用谷歌搜索了一下,对答案不满意。我仍然想从你们这些极客那里了解更多..谢谢

c# - 这个 C# "using"指令是什么?

我在代码示例中看到了这个C#using语句:usingStringFormat=System.Drawing.StringFormat;这是怎么回事? 最佳答案 这是将类型名称别名为更短的名称。同样的语法也可以用于命名空间的别名。参见usingdirective.(根据理查德更新) 关于c#-这个C#"using"指令是什么?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/103