草庐IT

c# - 静态类的范围是什么?

我有一个程序集,一次可能被多个进程使用。如果我使用的是静态类,那么多个进程是否都会使用该类的同一个“实例”?由于进程是分开的,它们是否会在不同的应用程序域下运行,因此静态“实例”是分开的?这里的细节是该程序集正由自定义BizTalk适配器使用,我可以将其设置为并行批处理消息。这就是我上面所说的“多进程”。 最佳答案 静态类在每个应用程序域中只存在一次。在您的情况下,这取决于适配器是在同一应用程序域中使用多个线程(因此共享静态类的单个实例)还是使用多个进程(因此具有静态类的单独实例)。 关

c# - AssemblyResolve 未针对依赖项触发

我现在正在为AssenblyResolve事件苦苦挣扎一段时间。我搜索了stackoverflow并进行了其他谷歌搜索,并尝试了所有我认为相关的内容。以下是更接近我的问题的链接(在我看来):AssemblyResolveisnotinvokedandFileNotFoundExceptionisthrownduringserializationWheretohandleAssemblyResolveeventinaclasslibrary?我有一个带有静态方法的Bootstrapper类(为了清楚起见,我将删除我们拥有的线程安全代码:publicstaticvoidInitialize

c# - 字符串常量类应该是静态的吗?

我正在从事一个新项目,我注意到一些我不确定是否真实的代码。我用来证明问题的名称和值是假的。publicclassMyConsts//Shoulditbestatic?{publicconststringMyConst1="a";publicconststringMyConst2="b";publicconststringMyConst3="c";publicconststringMyConst4="d";....}按照我的逻辑,这个类(只包含常量值)应该是静态的,所以没有选项可以初始化它,这没有任何意义,我说得对吗?编辑:我在盲目编写代码,所以我混淆了string和const的顺序-因

c# - 引入静态方法

如何从另一个c#源文件导入静态方法并在没有“点”的情况下使用它?喜欢:foo.csnamespacefoo{publicstaticclassbar{publicstaticvoidfoobar(){}}}程序.csusingfoo.bar.foobar;我不能只是foobar();,但是如果我在顶部编写usingfoo;并调用foobar()作为foo.bar.foobar()它可以工作,尽管它很冗长。有什么解决方法吗? 最佳答案 您可以使用C#6.0。C#6.0allowsstaticimport(SeeusingStaticM

c# - 为什么 System.Array 的大多数方法都是静态的?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我想这更像是一个框架设计问题。我最近想知道为什么System.Array中的大多数方法都是静态的。我的直觉react总是使用例如Array实例上的IndexOf(object),而不是System.Array.IndexOf(array,object)。决定是否将方法设为静态是否有一个主要原则?我发现了这个问题:WhenisitbesttouseStati

c# - 静态通用类作为字典

泛型类中的静态字段对于泛型参数的每个组合都有一个单独的值。因此它可以用作Dictionarywhatever>这比静态Dictionarywhatever>好还是坏?换句话说,这些实现中哪个更有效?publicstaticclassMethodGen{publicstaticreadonlyActionMethod=CreateMethod();staticActionCreateMethod(){/*...*/}}或者,publicstaticclassMethodGen{staticreadonlyDictionarymethods=newDictionary();publicst

c# - 在 C# 中初始化静态变量内联或静态构造函数的区别

我想知道初始化静态成员内联有什么区别:classFoo{privatestaticBarbar_=newBar();}或在静态构造函数中初始化它,如下所示:classFoo{staticFoo(){bar_=newBar();}privatestaticBarbar_;} 最佳答案 如果您的类型中有一个静态构造函数,它会由于beforefieldinit而改变类型初始化不再应用标志。它还会影响初始化顺序-变量初始化器都在静态构造函数之前执行。据我所知,就这些。 关于c#-在C#中初始化静

c# - 在 ASP.NET 中使用静态变量代替应用程序状态

我打算在ASP.NET中使用静态变量而不是应用程序状态,我想知道这是否是正确的方法:[Global.asax.cs]...publicclassGlobal:System.Web.HttpApplication{voidApplication_Start(objectsender,EventArgse){//Codethatrunsonapplicationstartup}...privatestaticDictionarycacheItems=newDictionary();privatestaticobjectlocker=newobject();publicstaticDicti

c# - 绑定(bind)到 WPF 静态类中的静态属性

我在使用静态类的静态属性绑定(bind)值时遇到问题。我的类(class):namespaceMyNamespace.Data{publicstaticclassMySettings{publicstaticColorBackgroundColor{get;set;}publicstaticColorFontColor{get;set;}}}XAML:...当我运行此代码时,背景设置正常,但其余部分保持不变.. 最佳答案 问题是您的源属性属于Colortype和destination属性是Brush.您可以创建SolidColorB

c# - 在实例构造函数之后调用静态构造函数?

亲爱的,像这样的问题已经alreadyasked,但在答案中没有对我看到的问题的解释。问题:C#ProgrammingGuide说:Astaticconstructorisusedtoinitializeanystaticdata,ortoperformaparticularactionthatneedsperformedonceonly.Itiscalledautomaticallybeforethefirstinstanceiscreatedoranystaticmembersarereferenced.特别是,在创建类的任何实例之前调用静态构造函数。(这不能确保静态构造函数在创建