我正在使用 DataTable 用翻译词典中的数据填充网格视图 - 字面意思是Dictionary<string, string>
使用以下代码:
var dt = new DataTable();
dt.Columns.Add("key", typeof(string));
dt.Columns.Add("value", typeof(string));
dt.PrimaryKey = new DataColumn[] { dt.Columns[0] };
foreach(var key in localizer.Keys)
{
var row = dt.NewRow();
row[0] = key;
row[1] = localizer[key];
dt.Rows.Add(row); // this line throws an error even though identifiers are ascii
// and contain no spaces
}
我尝试在循环之后创建主键约束,但随后它引发了另一个异常,指出该列包含不唯一的值。它停止的值是"evalDate"
并且还有另外两个相似的键"evalDateStart"
,"evalDateEnd"
但没有一个是相同的——这是合乎逻辑的,因为它们是从字典中读取的。