Учитывая список объектов, мне нужно преобразовать его в набор данных, где каждый элемент в списке представлен строкой, и каждое свойство является столбцом в строке. Затем этот DataSet будет передан функции Aspose.Cells, чтобы создать документ Excel в качестве отчета.
Скажем, у меня есть следующее:
public class Record
{
public int ID { get; set; }
public bool Status { get; set; }
public string Message { get; set; }
}
Учитывая записи в List, как я могу преобразовать его в DataSet следующим образом:
ID Status Message
1 true "message"
2 false "message2"
3 true "message3"
...
В настоящий момент я могу думать только о следующем:
DataSet ds = new DataSet
ds.Tables.Add();
ds.Tables[0].Add("ID", typeof(int));
ds.Tables[0].Add("Status", typeof(bool));
ds.Tables[0].Add("Message", typeof(string));
foreach(Record record in records)
{
ds.Tables[0].Rows.Add(record.ID, record.Status, record.Message);
}
Но этот способ не позволяет мне думать, что должен быть лучший способ, поскольку, по крайней мере, если новые свойства добавляются в запись, то они не будут отображаться в DataSet... но в то же время это позволяет мне контролировать порядок каждого свойства добавляется в строку.
Кто-нибудь знает, как лучше это сделать?