我需要一些帮助。我想在C#中创建一个列表(或字典),它保存从每个Access数据库读取的每行数据的错误。我希望错误列表能够保存这样的东西(如在json中):
{
filename: {
name: 'test1.mdb',
errors: {
'row': 1,
'id': 23423,
'error': 'something went wrong',
}
}
}
现在,我想在每次读取的行都有问题时创建一个新的错误字典。这就是我做的。
Dictionary<string, string> errors = new Dictionary<string, string>();
errors.Add('row', '1');
errors.Add('error', 'something went wrong');
errors.Add('id', '23423');
现在,如何使用生成错误的文件名添加上述错误。这就是我所做的:
Dictionary<string, Dictionary<string, string>> file = new Dictionary<string, Dictionary<string, string>>();
file.Add("errors", errors);
好的,这适用于输入字典中的错误,但文件名怎么样?我无法做到
file.Add("name", filename); <-- this won't work
因为filename不是字典而是字符串。如何存储这些信息,使其包含文件名和错误字典?
答案 0 :(得分:2)
你应该更多地打破这个。首先,创建一个Error
类:
public class Error {
public int Row { get; set; }
public string ErrorMessage { get; set; }
public int Id { get; set; }
}
然后创建一个FileName
类:
public class FileName {
public string Name { get; set; }
public List<Error> Errors { get; set; }
public FileName()
{
Errors = new List<Error>();
}
}
然后你可以添加这样的东西:
var file = new FileName();
file.Name = "test1.mdb";
file.Errors.Add(new Error()
{
Row = 1,
Id = 23432,
ErrorMessage = "Something went wrong!"
});