在运行此代码时,我在第 9 行收到 System.TypeInitializationException 异常,在该代码中我尝试在类的静态构造函数中填充通用列表。
using System;
using System.Collections.Generic;
namespace ConsoleApplication5_static_constructor {
public static class DataRepository {
public static List<DefinedField> Tables;
static DataRepository() {
Console.WriteLine("static DataRepository constructor fired");
Tables.Add(new DefinedField("ID")); **//this is line 9**
}
}
public class DefinedField {
string _tableName;
public DefinedField(string tableName) {
_tableName = tableName;
}
public string TableName {
get { return _tableName; }
set { _tableName = value; }
}
}
}
调用代码:
using System.Collections.Generic;
namespace ConsoleApplication5_static_constructor {
class Program {
static void Main(string[] args) {
List<DefinedField> x = DataRepository.Tables;
}
}
}
请问究竟是什么导致了错误,我该如何解决?
编辑:还有一个 NullReferenceException 类型的内部异常静态构造函数是否不能初始化新对象?
我是一名优秀的程序员,十分优秀!