【c# – 静态WCF代理类对象】教程文章相关的互联网学习教程文章

c# – 静态存储库 – 解决方法【代码】

首先,一些背景.我们最近接受了一个大型的MVC3项目.该项目已经准备好在不久前上线,然后客户决定他们想要重新设置整个网站的主题并添加更多功能.他们雇用我们重新设计网站主题,完成剩余的功能并进行部署. 通常它是使用非常清晰,有序的方法构建的,每个数据库表都有一个存储库和一个清晰的服务层,但是有些奇怪的东西让我有点不舒服.继续唠叨我的主要奇怪之处在于,应用程序中的每个存储库和服务都是完全的,100%是静态的(是的,包括写入数...

c# – 在静态方法线程安全中使用foreach而不是HttpContext.Current吗?【代码】

记住这些 –HttpContext.Current –Foreach 我无法绕过这个问题……这个代码在ASP.NET中是“线程安全的”吗?public static bool IsCookieMissing() {foreach (string cookieKey in HttpContext.Current.Request.Cookies.AllKeys){if (cookieKey.EndsWith("cookie_name")){return false;}}return true; }解决方法:Is this code “thread safe” in ASP.NET?这取决于你期望它做什么.它最有可能做你期望做的事情,因此它是“线程安全的...

c# – 静态Web方法 – 用户之间共享值的风险【代码】

这个问题是关于在asp.net webforms应用程序中使用static修饰符我是一个初学者,虽然我从未遇到过这个静态“问题”的问题我仍然不担心这个问题,并希望清除这一点. 最近我开始使用Ajax / jQuery POST而不是asp.net’正常’回发 所以我可以利用javascript对象,并在与服务器交互时避免页面刷新 我的问题是关于ajax帖子.它使用静态方法将信息返回给用户 关于客户端代码的一些背景信息…(如果你愿意,你可以跳到下面的服务器端) 客户端 : ...

C#中静态成员的别名?【代码】

我有一个静态成员:namespace MyLibrary {public static class MyClass{public static string MyMember;} }我想要访问这样的:using MyLibrary;namespace MyApp {class Program{static void Main(string[] args){MyMember = "Some value.";}} }如何通过使用MyLibrary添加MyMember(MyClass.)来访问MyApp?解决方法:C#不允许您创建成员的别名,只允许创建类型的成员.因此,在C#中执行类似操作的唯一方法是创建一个可从该范围访问的新属...

c# – 如何迭代静态类中的所有静态公共Guid【代码】

参见英文答案 > How to get all static properties and its values of a class using reflection 1个给定是我的示例类:public static class MyConstantClass {public static readonly Guid Prop1 = new Guid("d0f6f396-b75e-4312-bb54-09fbb40cf51e");public static readonly Guid Prop2 = new Guid("398810e5-1ed2-468c-9f21-1af58dcecbbf"); }我到目前为止所尝试的内容:var props= typeof(...

c# – 使用循环静态只读字段定义的奇怪行为【代码】

在Visual Studio 2017(Debug build)中运行以下代码时,我有一些奇怪的行为:using System; using System.Collections.Generic;namespace ConsoleApp2 {public class Program{public static class DefaultCustomers{public static readonly Customer NiceCustomer = new Customer() { Name = "Mr. Nice Guy " };public static readonly Customer EvilCustomer = new Customer() { Name = "Mr. Evil Guy " };public static readonly C...

c# – .NET远程处理异常:权限被拒绝:无法远程调用非公共或静态方法【代码】

我正在编写一个程序,它允许加载特定的托管.DLL文件并使用它.由于我希望能够卸载.DLL文件,我正在创建两个AppDomain – 一个用于app本身,另一个用于当前加载的.DLL. 由于加载的.DLL中的大多数对象都没有很好地序列化,我正在创建一个MarshalByRefObject包装类,它将对象本身保存在自己的AppDomain中,并将一些反射函数暴露给主应用程序AppDomain. 但是,当我尝试在远程对象上调用一个方法时,我遇到了异常:Permission denied: cannot ca...

c# – 无法将静态方法指定为接口的一部分?【代码】

我有一组对象,我想要符合一个接口,比如ISpecialObject.然而,我的实现的一部分我想在每个ISpecialObject的实现中封装这些specialobjects的实例化触发器. 所以说例如我有实现ISpecialObject的类类型列表,然后我想通过每个类并调用一个像CanCreate(一些数据)的静态方法,告诉我是否要创建其中一个的实例. 但是,.net似乎不允许我将此静态CanCreate指定为ISpecialObject接口的一部分. 任何人都可以提出一种方法来解决这个问题,或者更好地...

c# – 来自xunit MemberData函数的静态数据计算两次【代码】

我在计算两次C#Xunit测试中来自静态类的计算数据时遇到了一些麻烦. 这将用于实际的生产代码要复杂得多,但随后的代码足以展示我所看到的问题. 在下面的代码中,我有一个随机生成的,延迟加载的int在当前时间播种. 我在这里测试的是这个属性等于它自己.我通过MemberData函数将属性的值插入到测试中. 由于该属性应该只被初始化一次,我希望这个测试应该总是通过.我希望在运行RandomIntMemberData函数时会初始化静态字段,而不会再次. 但是...

c# – 混合模式C/C++LI崩溃:atexit中的堆损坏(静态析构函数注册)【代码】

我正在部署一个程序,代码库是C/C++LI和C#的混合体. C/C++LI有各种风格:native,mixed(/ clr)和safe(/ clr:safe).在我的开发环境中,我创建了一个包含所有C/C++LI代码的DLL,并引用了C#代码(EXE).这种方法完美无瑕. 对于我的发行版,我想发布一个可执行文件(只是声明“为什么不只是将DLL和EXE分开?”是不可接受的). 到目前为止,我已经成功地用所有不同的来源编译EXE.但是,当我运行它时,我得到“XXXX已停止工作”对话框,其中包含检查在...

如何将静态字符串与对象类型C#相关联【代码】

我有一个查询rest API的方法,我在其中执行从JSON到对象的映射.由于我传递给此方法的查询字符串和对象类型始终必须匹配,因此我希望将查询字符串包含为静态字符串.public class Root {public static string Query; }public class RootObject : Root, IRootObject {public D d { get; set; }public static new string Query = "AccountSet"; }public interface IRootObject {D d { get; } }public class RestClass {public void Conn...

c# – 使无状态方法静态是好还是坏?

如果类方法不依赖于类的状态,那么它可以是静态的.在这种情况下,使这些方法保持静态是好还是坏? (标记为C#,但可能适用于许多OO语言,其中方法必须是类成员.)解决方法:Visual Studio Code Analysis和ReSharper建议使这些方法保持静态,因为它具有很小的性能优势: 从MSDN开始:Members that do not access instance data or call instance methods can be marked as static (Shared in Visual Basic). After you mark the methods as ...

为什么不是所有在C#中调用的静态构造函数(即父类的那些)?【代码】

我有三个班,Base,Derived和Final. Derived派生自Base,Final派生自Derived.这三个类都有一个静态构造函数.类派生为名为Setup的公共静态方法.当我调用Final.Setup时,我希望所有三个静态构造函数都被执行,但只有Derived中的一个会被运行. 以下是示例源代码:abstract class Base{static Base(){System.Console.WriteLine ("Base");}}abstract class Derived : Base{static Derived(){System.Console.WriteLine ("Derived");}public st...

如何在C#中安全地将静态类转换为实例化类【代码】

我最近(几个月前)改变了工作,继承了一个代码库,它违反了SOLID原则的每一个,尽可能多次.似乎编写此代码的人决定详细研究每一个良好的编码实践,并尽可能经常地和最根本地违反它们. 我是该产品的唯一开发人员 – 组织中没有人知道代码,代码库太大而且复杂,无法完全重写.我正在研究可以使代码库变得灵活和健壮的最高价值变化.放弃此产品也不是一种选择. 产品中所有问题的根源于一组类,这些类是核心业务逻辑数据结构.这些类有很多问题,但...

C#定义属性-静态属性

C#定义属性-静态属性 2012年06月27日 08:57:00 weixin_34198583 阅读数:11 C#静态属性可以是读写属性,只读属性,只写属性中的任意一种。也就是说,静态属性可以同时包含set访问器和get访问器,也可以只包含其中一种。 静态属性定义方式就是在属性前加static关键字,语法如下: <访问修饰符> static 数据类型 属性名 { get{} set{} } 静态访问器适用于整个类,而不是类的实例。静态属性中的set{},get{}访问器只能访问类的静态成员...