草庐IT

activate_this

全部标签

c# - 在 C# 构造函数中使用 this()

我一直在试图找出这些构造函数之间是否存在任何差异。假设有一个不带参数的Foo()构造函数,所有这些构造函数都会有相同的结果吗?例子1publicFoo():this(){blah;blah;blah;}例子2publicFoo(){this();blah;blah;blah;}示例3publicFoo(){this=newFoo();blah;blah;blah;} 最佳答案 示例1是有效的(假设有一个无参数构造函数),并且调用无参数构造函数作为初始化的一部分。看我的articleonconstructorchaining更多细节。

c# - 在 C# 中使用或不使用 'this' 限定符

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:Whendoyouusethe“this”keyword?我刚刚开始使用Resharper来分析我的代码,它建议我做很多事情,我对它的输出非常满意,因为它还教会了我一些更好的做事方法。显然可以忽略它的建议,其中之一我只想从社区获得一些反馈!我一直倾向于对属于当前类的属性(即this.Name)使用“this”限定符。没有真正的原因-我似乎只是在很久以前就采用了这种方式。Resharper建议这是多余的,也许我应该删除它。你怎么看?

c# - 它可以返回null吗? (this.Result ==Result.OK)

这段代码可以返回null吗?(this.Result==Result.OK)此行(或类似行)是否可以返回除true或false之外的任何内容(例如null)? 最佳答案 (this.Result==Result.OK)好的;让我们一block一block地看:this.(anything)如果this为null-它永远不应该,那可能会失败,但是theoreticallycanbeifyouareevil-所以我们可能会因NullReferenceException而失败。this.Result如果这是一个属性访问器(get),那么它

c# - 你在实例变量前面使用 'this' 吗?

当从类本身访问类的实例变量或属性时,您是否在它们前面加上“this.”? 最佳答案 我只在构造函数或setter中使用this.前缀,主要是在传递的参数与相关成员变量同名的情况下。 关于c#-你在实例变量前面使用'this'吗?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/762025/

c# - 跨多个 Active Directory 域搜索用户

我正在使用System.DirectoryServices.AccountManagement来提供用户查找功能。该企业有多个区域特定的AD域:AMR、EUR、JPN等。以下适用于EUR域,但不会返回来自其他域的用户(自然):varcontext=newPrincipalContext(ContextType.Domain,"mycorp.com","DC=eur,DC=mycorp,DC=com");varquery=newUserPrincipal(GetContext());query.Name="*Bloggs*";varusers=newPrincipalSearcher(q

c# - 在其自己的构造函数中将 "this"作为参数传递是一种不好的做法吗?

我有这个BdlTabItem它接收类型为DockableUserControl的参数并想知道使用uc.TabItem=this在两者之间创建循环引用是否是一种不好的做法和newBdlDockableWindow(this)在构造函数完成之前。我知道这种行为对于非托管native代码(C++)来说非常糟糕。因此,即使我没有收到任何警告或错误,我也会在这里询问我是否应该这样做。publicBdlTabItem(BdlTabControlparent,DockableUserControluc,stringtitle){TabControlParent=parent;UserControl=

c# - 通过反射调用 this[int index]

我尝试为MicrosoftOffice实现一个基于反射的后期绑定(bind)库。OfficeCOM对象的属性和方法调用方式如下:Typetype=Type.GetTypeFromProgID("Word.Application");objectcomObject=Activator.CreateInstance(type);type.InvokeMember(,,null,comObject,newobject[]{});InvokeMember是唯一可能的方法,因为Type.GetMethod/GetProperty无法正确处理COM对象。可以使用InvokeMember调用方法和属

c# - 为什么 Visual Studio IDE 有时会初始化“this.components 对象 : and other times not?

我最近注意到VisualStudioDesigner(C#)的一些我不理解的行为,想知道是否有人可以澄清...在我的一些Windows窗体中,设计器生成的代码的第一行是这样的;this.components=newSystem.ComponentModel.Container();在这种情况下,dispose方法在同一个设计器文件中,dispose方法在case“if”条件下放置两个“Dispose”调用,如下所示;protectedoverridevoidDispose(booldisposing){if(disposing&&(components!=null)){componen

c# - 使用 Active Directory 组进行 Windows 身份验证

我有一个小项目,使用VisualStudio2013、.NET4.5、MVC5和EF6构建。我使用Windows身份验证创建它,但现在我需要检查ActiveDirectory组中的成员身份以允许或拒绝访问权限。我已经深入了许多非常深的兔子洞,试图找出如何做到这一点。起初我假设我需要更改项目以使用“本地”身份验证。但是,我发现:VS2013中显然没有办法更改项目使用的身份验证类型(除了手动编辑某些文件)。目前还没有任何文档解释如何设置“本地”身份验证。(真的吗?这怎么可能?)无论如何,我需要的根本不是“本地”身份验证,因为它仅适用于WindowsIdentityFederation服务(

c# - 在运行时加载程序集并使用 Activator.CreateInstance() 创建实例

我试图在运行时加载一个程序集,但我不确定为什么我不能使用静态Activator.CreateInstance()在程序集中创建一个类型的实例。它适用于Assembly.CreateInstance()。stringassemblyFilename="MyAssembly.dll";stringassemblyName="MyAssembly";stringtypeName="MyAssembly.MyType";FileInfofileInfo=newFileInfo(assemblyFilename);这个有效:varassembly=Assembly.LoadFrom(assemb