如何在运行时C#ASP.Net更改DataSet的架构

时间:2009-01-08 06:27:03

标签: c# asp.net dataset

我想知道如何在运行时更改DataSet的架构

2 个答案:

答案 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;
            }
        }