Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在“常规”列表中添加列名?_C#_.net_Visual Studio_Visual Studio 2008 - Fatal编程技术网

C# 如何在“常规”列表中添加列名?

C# 如何在“常规”列表中添加列名?,c#,.net,visual-studio,visual-studio-2008,C#,.net,Visual Studio,Visual Studio 2008,如何在“列表MyColumnNames”中添加Excel数据的列名。它向我返回未设置为对象实例的对象引用 我想在以下情况下使用上述类: class MyExcelSheets { public List MyColumnNames { get; set; } } 如何解决此问题?错误:NullReferenceException假设公共列表MyColumnNames{get;set;}实际声明为公共列表MyColumnNames{get;set;} 行:

如何在“列表MyColumnNames”中添加Excel数据的列名。它向我返回未设置为对象实例的对象引用

我想在以下情况下使用上述类:

 class MyExcelSheets
    {
        public List MyColumnNames { get; set; }
    }

如何解决此问题?

错误:NullReferenceException

假设
公共列表MyColumnNames{get;set;}
实际声明为
公共列表MyColumnNames{get;set;}

行:

     myexcelSheet = new MyExcelSheets();
                myexcelSheet.MyColumnNames = new MyExcelSheets().MyColumnNames;
                foreach (DataColumn col in dTable.Columns)
                  myexcelSheet.MyColumnNames.Add(col.ColumnName.ToString());
应该是:

myexcelSheet.MyColumnNames = new MyExcelSheets().MyColumnNames;
myexcelSheet.MyColumnNames=新列表;

尽管通常最好在构造函数或其他东西中执行此操作。

假设
公共列表MyColumnNames{get;set;}
实际声明为
公共列表MyColumnNames{get;set;}

行:

     myexcelSheet = new MyExcelSheets();
                myexcelSheet.MyColumnNames = new MyExcelSheets().MyColumnNames;
                foreach (DataColumn col in dTable.Columns)
                  myexcelSheet.MyColumnNames.Add(col.ColumnName.ToString());
应该是:

myexcelSheet.MyColumnNames = new MyExcelSheets().MyColumnNames;
myexcelSheet.MyColumnNames=新列表;

尽管通常最好在构造函数或其他东西中执行此操作。

代码myexcelSheet.MyColumnNames=new MyExcelSheets().MyColumnNames仅获取对属性的引用,但它不会实例化该属性

添加代码

 myexcelSheet.MyColumnNames = new List<string>;
这个。MyColumnNames=新列表;
在静态中,构造函数将解决这个问题,因为这部分代码将由运行时调用,我们不必担心实例化状态转移对象(在本例中就是这样)

例如:

static MyExcelSheets(){this.MyColumnNames=new List;}
谢谢,
Vijay

代码myexcelSheet.MyColumnNames=新的MyExcelSheets().MyColumnNames仅获取对属性的引用,但它不会实例化该属性

添加代码

 myexcelSheet.MyColumnNames = new List<string>;
这个。MyColumnNames=新列表;
在静态中,构造函数将解决这个问题,因为这部分代码将由运行时调用,我们不必担心实例化状态转移对象(在本例中就是这样)

例如:

static MyExcelSheets(){this.MyColumnNames=new List;}
谢谢, 维杰