Мне нужно изменить DateTimeMode некоторых столбцов в уже заполненном наборе данных. (Я не хочу менять его до того, как он будет заполнен, поскольку это будет означать внесение изменений в несколько методов через приложение.)
Вот stmt, который я использую (для одного столбца):
copy.Tables[0].Columns["DateColName"].DateTimeMode = DataSetDateTime.Utc;
Однако выдается ошибка, из-за которой невозможно изменить DateTimeMode, если набор данных содержит данные. Таким образом, решение, которое я думаю, заключается в создании клона набора данных, изменении DateTimeMode требуемых столбцов и последующей загрузке данных обратно.
DataSet copy = dsdata.Clone();
copy.Tables[0].Columns["DateColName"].DateTimeMode = DataSetDateTime.Utc;
copy.Load(dsdata.CreateDataReader(), LoadOption.OverwriteChanges, "TableName");
Есть ли лучший способ сделать это?