string goodBarcodeFile = @"C:\path\to\goodBarcodes.txt"; string badBarcodeFile = @"C:\path\to\goodBarcodes.txt"; List<string> goodBarcodeList = System.IO.File.ReadAllLines(goodBarcodeFile).ToList(); List<string> badBarcodeList = System.IO.File.ReadAllLines(badBarcodeFile).ToList();goodBarcodeFile和badBarcodeFile报错,字段初始值设定项无法引用非静态字段、方法或属性
时间: 2024-02-17 21:01:21 浏览: 138
这个错误是因为在类的字段初始值中引用了非静态字段、方法或属性。在这个例子中,goodBarcodeFile和badBarcodeFile是实例字段,不能在字段初始值设定项中使用。
解决这个问题的方法是将这些字段的值移到类的构造函数中,或者将它们声明为静态字段。如果你将它们声明为静态字段,那么你可以在字段初始值设定项中使用它们,因为静态字段在类加载时就已经被初始化了。
修改后的代码应该像这样:
```
static string goodBarcodeFile = @"C:\path\to\goodBarcodes.txt";
static string badBarcodeFile = @"C:\path\to\goodBarcodes.txt";
List<string> goodBarcodeList = System.IO.File.ReadAllLines(goodBarcodeFile).ToList();
List<string> badBarcodeList = System.IO.File.ReadAllLines(badBarcodeFile).ToList();
```
或者
```
string goodBarcodeFile;
string badBarcodeFile;
List<string> goodBarcodeList;
List<string> badBarcodeList;
public MyClass()
{
goodBarcodeFile = @"C:\path\to\goodBarcodes.txt";
badBarcodeFile = @"C:\path\to\goodBarcodes.txt";
goodBarcodeList = System.IO.File.ReadAllLines(goodBarcodeFile).ToList();
badBarcodeList = System.IO.File.ReadAllLines(badBarcodeFile).ToList();
}
```
阅读全文