这可能非常简单。我创建了一个带有列表的类
public class lstLog
{
public String column1;
public String column2;
public String column3;
public String column4;
// Methods
public lstLog(String column1, String column2, String column3, String column4)
{
this.column1 = column1;
this.column2 = column2;
this.column3 = column3;
this.column4 = column4;
}
我可以在运行时插入和读取列表的内容。 我还想在运行时获取列名。这可能吗?感谢。
答案 0 :(得分:0)
如果要检索字段的名称,则应使用反射。
答案 1 :(得分:0)
你有一个变量的“列表”,但真正的列表看起来像这样:
public List<string> _someStringList = new List<string>;
要获得包含列名等名称的列表,您可以使用字典:
public Dictionary<string, string> _someDict = new Dictionary<string, string>
要获取课程名称,您可以使用这样的反射:
foreach (PropertyInfo pi in typeof(lstLog).GetProperties())
Console.WriteLine("A property with name: " pi.Name);
答案 2 :(得分:0)
您应该使用字典,以便按名称查询列,并根据需要添加/插入新列。
public class LstLog
{
private Dictionary<string, string> columnDictionary = new Dictionary<string, string>();
// Methods
public LstLog(String column1, String column2, String column3, String column4)
{
columnDictionary["column1"] = column1;
columnDictionary["column2"] = column1;
columnDictionary["column3"] = column1;
columnDictionary["column4"] = column1;
}
public string GetColumnValue(string columnName)
{
if(columnDictionary.ContainsKey(columnName)
return columnDictionary[columnName];
else
return null;
}
}