我想知道如何在运行时更改DataSet的架构
答案 0 :(得分:1)
是键入的还是无类型DataSet
?对于打字,这可能不是一个好主意。但对于无类型,只需操作表上的Columns
等,或添加/删除表/关联。有什么具体的东西是痛苦的吗?或者您的意思是适配器的架构?
就个人而言,我很少使用DataSet
,更喜欢实体的标准POCO类(可能使用ORM,如LINQ-to-SQL / Entity Framework / NHibernate)。但有些人喜欢他们......
答案 1 :(得分:0)
我们遇到了类似的问题。这就是我们所做的。数据库服务器以GMT格式存储时间。并且,Web服务返回所有GMT时间。因此,在C#中,我们将时区设置为UTC并使用本地化进行显示。
DataSet newDset = srcTable.Clone();
DataTable dTable = newDset.Tables[0];
for (int j = 0; j < dTable.Columns.Count; j++)
{
if (dTable.Columns[j].DataType.ToString() == "System.DateTime")
{
dTable.Columns[j].DateTimeMode = DataSetDateTime.Utc;
}
}