【C#变量初始化】教程文章相关的互联网学习教程文章

首页> C#>静态初始化之前

我有一个软件,其中有一个中央抽象工厂方法负责打开文件.最初,工厂知道它可以打开的所有文件类型以及创建的相应对象(每个文件类型都有不同的处理程序),但是随着时间的流逝,它变得不切实际:首先,不希望摆弄工厂处理新文件类型时的类;其次,一些具体的文件处理程序存在于单独的DLL中,从而使工厂无法访问它们! (文件处理程序有时要求工厂处理仅索引其他文件路径的文件,因此他们必须知道工厂;如果工厂知道它们,则依赖关系将是循环的)...

运行时C#线程重新初始化【代码】

我已经全局声明了一个线程 私有线程_ftpthread; 该线程用于将图像上传到ftp 在我的功能中,我使用了private void uploadImage() {... ... _ftpthread = new Thread(() => sendThumbsToFTP(path,image)); _ftpthread.Start();_ftpthread = new Thread(() => sendThumbsToFTP(path2,image2)); _ftpthread.Start(); ... ... }我的问题是我可以这样初始化线程吗?第一个线程在重新初始化时是否会终止?还是两者都会被执行?解决方法:要回...

C#中的自定义app.config生成配置系统无法初始化异常【代码】

我检查了与配置系统相关的Internet上的所有解决方案,未能初始化异常,但是没有一个对我有用. 所以我要发布这个问题. 我正在使用Winform C#开发PayPal REST API.我自定义了我的app.config文件.当我重建应用程序时,它显示配置系统初始化失败 这是默认的app.config代码:<?xml version="1.0" encoding="utf-8" ?> <configuration><startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /></startup> </co...

c#-AutoFac-在app_start上初始化重量级的单例【代码】

我们的配置是使用AutoFac的MVC5 C#应用程序. 我们有很多单例,如果它们是在第一个请求中初始化的,那么它们会对用户造成不良的体验,因为它们的初始化总共需要3-4秒左右的时间.我们正在使用AutoFac进行依赖注入,我想知道是否有任何方法可以确保在App_Start上构建单例(或这些特定的单例),这样我们就不会在用户发送第一个请求时浪费时间吗?如果不是,解决此问题的最佳方法是什么?解决方法:解决此类问题的一般方法是在代理实现后隐藏此类...

首页> C#>如何正确初始化和填充我的多维数组?【代码】

如何正确初始化和填充多维数组?string[] thisCanVaryInLength = new string[3] {"col1,nam1","col2,nam2","col3,nam3"};string[,] columnsAndTheirNames = ?? //Unsure how to initializefor (int i = 0; i < thisCanVaryInLength.Length; i++) {columnsAndTheirNames[i, 0] = thisCanVaryInLength[0];columnsAndTheirNames[i, 1] = thisCanVaryInLength[1]; }解决方法:怎么样:string[,] columnsAndTheirNames = new string[this...

如何从字符串C#初始化字符的二维矩阵【代码】

我想在C#中创建一个2D矩阵.我在C中有以下示例代码 https://www.geeksforgeeks.org/search-a-word-in-a-2d-grid-of-characters/ 我想像在C中一样初始化矩阵int main() {char grid[R][C] = {"GEEKSFORGEEKS","GEEKSQUIZGEEK","IDEQAPRACTICE"};patternSearch(grid, "GEEKS");....这是我在C#中的代码List<string> rows = new List<string> {"GEEKSFORGEEKS", "GEEKSQUIZGEEK", "IDEQAPRACTICE"};char[,] grid = new char[rows.Count, ...

C#到VB.Net转换-具有初始化的类对象的数组【代码】

有人可以帮我吗,我是vb.net的新手,我试图通过nhibernate firstsolution示例工作(用c#编写,由于其站点再次关闭,此处重新发布了https://web.archive.org/web/20090831053827/http://blogs.hibernatingrhinos.com/nhibernate/archive/2008/04/01/your-first-nhibernate-based-application.aspx),并且我努力转换这一位.香港专业教育学院尝试了无数的转换器; telerik,developerfusion和其他几个应用程序,但是生成的代码都不会编译,我看...

C#中的集合和对象初始化器【代码】

我需要将对父对象的引用存储在如下所示的分层数据集中.甚至可以使用对象初始化程序吗?是否有任何关键字指向“父”初始化程序,还是我必须以经典方式进行-首先声明父对象? (我不知道在’?’字符之间写什么)Scenarios.Add(new Scenario() {scenarioNumber = Scenarios.Count,scenarioDescription = "Example scenario",Steps = new BindingList<Step>(){new Step(){ parent = ?Scenario?, stepNumber = 1, subSteps = new BindingL...

c#-此模式的名称? (答案:带有双重检查锁定的延迟初始化)【代码】

考虑以下代码:public class Foo {private static object _lock = new object();public void NameDoesNotMatter(){if( SomeDataDoesNotExist() ){lock(_lock){if( SomeDataDoesNotExist() ){CreateSomeData();}else{// someone else also noticed the lack of data. We// both contended for the lock. The other guy won// and created the data, so we no longer need to.// But once he got out of the lock, we got in.// Th...

c# – 为什么我可以将初始化语法与readonly属性一起使用[复制]【代码】

参见英文答案 > Initializing list property without “new List” causes NullReferenceException 5个我有一个带有两个属性的Manager类,如下所示:public class Manager() {private string _name;private List<int> _reportingEmployeesIds;public string Name { get { return _name; }}public List<int> ReportingEmployeesIds { get {return _reportingEmployeesIds; } } 我试图创建一个Ma...

C# – 我可以使用数组初始化程序构建一个字节数组吗?【代码】

我想使用数组初始化程序从另一个字节数组中构建一个字节数组,以及构成标题/尾部的其他一些字节.基本上,我想做这样的事情:byte[] DecorateByteArray(byte[] payload) {return new byte[] { 0, 1, 2, payload.GetBytes(), 3, 4, 5}; }不幸的是,上面的GetBytes()是虚构的. 这有什么好的/优雅的方式吗?我通过使用BinaryWriter将所有内容写入MemoryStream,然后使用MemoryStream.ToArray()将其转换为字节数组来解决这个问题,但它感觉有...

c# – 静态字段/属性初始化【代码】

如果我有这样的类型:public struct Effect {public int Value { get; set; }public static int MinValue = Int32.MinValue; }MinValue只会初始化为ONCE,就像执行静态构造函数一样吗?或者我应该在静态构造函数中初始化MinValue? 这会对班级有什么不同吗?解决方法:它将被执行一次,但不完全像在静态构造函数中.关于何时执行类型初始化程序的规则是different when a type has a static constructor.请注意观察到的行为changed a bi...

c# – 构造函数和类成员初始化之间的差异?【代码】

在使用传递参数进行实例化时使用构造函数之间的区别是什么Customer Costomer1 = new Customer(100, Mark, 5000);并做同样但没有传递给构造函数但只是实例化成员?Customer Costomer1 = new Customer() { ID = 100, Name = "Mark", Salary = 5000, };哪一种更好,哪种情况好? 如果我说构造函数是在实例化对象时需要做更多的工作而成员初始化仅用于字段和属性的签名值,那么我是否正确? 如果我正确理解这一点,为什么你会使用构造函数...

c# – 初始化属性的良好做法?【代码】

我有一个类属性,它是一个字符串列表,List.有时此属性为null或者如果已设置但列表为空,则count为0.然而,在我的代码中的其他地方,我需要检查是否已设置此属性,因此当前我的代码检查它是否为null并且count为0,这看起来很混乱.if(objectA.folders is null) {if(objectA.folders.count == 0){// do something} }有关如何处理此事的任何建议?也许我应该总是初始化属性,以便它永远不会为空?解决方法:当我将List作为属性时,我通常会看到如...

c# – 如何使用连续值初始化列表?【代码】

我有这样的课public class Sample {public string A { get; set; }public int B { get; set; } }var sampleValues = new List<Sample>(){new Sample(){ A = "a1", B = 1 },new Sample(){ A = "a2", B = 2 },new Sample(){ A = "a3", B = 3 },new Sample(){ A = "a4", B = 4 },.....new Sample(){ A ="a30", B = 30}};有没有简单的方法用30个连续值初始化它,如图所示?解决方法:使用Enumerable.Range像:List<Sample> samvalues = E...