草庐IT

目的地

全部标签

c# - Dispose() 方法中 GC.SuppressFinalize(this) 的目的是什么?

我有以下代码:publicvoidDispose(){if(_instance!=null){_instance=null;//CallGC.SupressFinalizetotakethisobjectoffthefinalization//queueandpreventfinalizationcodeforthisobjectfrom//executingasecondtime.GC.SuppressFinalize(this);}}虽然有评论解释了那个与GC相关的调用的目的,但我仍然不明白为什么它在那里。一旦所有实例不复存在,对象是否注定要进行垃圾回收,例如在usingblock

c# - 使用 CommandType.Tabledirect 的目的是什么?

与CommandType.StoredProcedure或CommandType.Text不同的是,如何使用选项CommandType.Tabledirect? 最佳答案 CommandType包含指定如何解释命令字符串的名称。CommandType.Text用于SQL文本命令。(默认。)CommandType.StoredProcedure存储过程的名称。CommandType.TableDirect用于表的名称。当您调用其中一种Execute方法时,将返回指定表的所有行和列。注意:TableDirect仅受OLEDB的.NETF

c# - ConditionalWeakTable<TKey, TValue> 是否应该用于非编译器目的?

我最近遇到了ConditionalWeakTable在我搜索IDictionary的类(class)中它使用弱引用,如答案here中所建议的那样和here.有adefinitiveMSDNarticle其中介绍了该类(class)并指出:Youcanfindtheclass...intheSystem.Runtime.CompilerServicesnamespace.It’sinCompilerServicesbecauseit’snotageneral-purposedictionarytype:weintendforittoonlybeusedbycompilerwriters.

c# - Global.asax 中 FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters) 的目的是什么

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭8年前。Improvethisquestion我读过类似的问题WhatisthepurposeofRegisterGlobalFilter但无法得到答案,这个问题在某种程度上也围绕着一些其他的东西,而答案对我来说似乎并不完整。我的问题是:-MVC5FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);中global.asax中这一行的目的是什么为什么需要它?添加/注册的目的是什么过滤器?过

c# -::在 C# 中的目的是什么?

我在生成的代码中看到了双冒号(::)。我想知道它的目的是什么? 最佳答案 这是namespacealiasqualifieroperator.引用链接到MSDN页面:Thenamespacealiasqualifier(::)isusedtolookupidentifiers.Itisalwayspositionedbetweentwoidentifiers,asinthisexample:global::System.Console.WriteLine("HelloWorld"); 关

c# - Ninject 模块的目的是什么?

我是一个完全的ninject新手我一直在拆解其他人的代码,发现了几个nInject模块的实例-从Ninject.Modules.Module派生的类,并且有一个包含大部分代码的加载方法。通过调用StandardKernel实例的LoadModule方法并将模块类的实例传递给它来调用这些类。也许我在这里遗漏了一些明显的东西,但是与仅仅创建一个普通的旧类并调用它的方法,或者一个带有静态方法的静态类相比,这样做有什么好处呢? 最佳答案 Ninject模块是用于向IoC容器注册各种类型的工具。优点是这些模块然后保存在它们自己的类中。这允许您

c# - Microsoft.Net.Compilers 的目的是什么?

这个编译器的重要性是什么?它是必须拥有还是可以没有?无论如何,拥有另一个编译器的目的是什么,还是它只是一个future项目?简要概述将不胜感激。 最佳答案 Microsoft.Net.Compilers包的要点是随该包分发的编译器将用于编译您的项目,而不是.NETFramework或VisualStudio附带的编译器。最实用的直接好处是它允许您的项目使用C#6功能,然后允许这些项目构建在没有安装C#6编译器的系统上,例如在您没有安装C#6编译器的持续集成服务器上不想安装完整的VisualStudio2015。

c# - LINQ:选择对象不包含列表中项目的位置

我正在为这里的LINQ语法苦苦挣扎……我想我应该把它扔到这里。我在其他任何地方都找不到我要找的东西。好的,假设我有这个:publicclassBar{publicintBarId{get;set;}}publicclassFoo{publicListBarList{get;set;}}ListfooBunch=GetABunchOfFoos();//let'sjustassumeI'mgettingmorethanoneListfooSelect=newList;ListfilterBars=GetAFewBars();//assumeI'mgettinglike2or3fooSele

c# - 在 C# 中使用 yield return 迭代器的目的/优势是什么?

我见过的所有在C#方法中使用yieldreturnx;的示例都可以通过返回整个列表以相同的方式完成。在这些情况下,使用yieldreturn语法与返回列表相比有什么好处或优势吗?另外,yieldreturn在什么情况下不能只返回完整的列表? 最佳答案 但是如果您自己构建一个集合呢?通常,迭代器可用于延迟生成对象序列。例如Enumerable.Range方法内部没有任何类型的集合。它只会按需生成下一个数字。这种使用状态机的惰性序列生成有很多用途。其中大部分包含在函数式编程概念中。在我看来,如果您只是将迭代器视为一种枚举集合的方式(它只

c# - 有一个只有属性的类可以用于重构目的吗?

我有一个方法需要30个参数。我获取了参数并将它们放入一个类中,这样我就可以只将一个参数(类)传递给方法。在重构的情况下传递一个封装所有参数的对象是否完全没问题,即使它只包含所有参数。 最佳答案 这是个好主意。例如,这通常是WCF中数据契约的完成方式。此模型的一个优点是,如果您添加一个新参数,类的使用者不需要仅仅为了添加参数而进行更改。正如DavidHeffernan提到的,它可以帮助self记录代码:FrobRequestfrobRequest=newFrobRequest{FrobTarget="Joe",Url=newUri("