将字符串转换为DataColumn中的GUID

5

如何将类型为 string 的 GUID DataColumn 转换为类型为 Guid 的 DataColumn?源数据中的一列类型错误,但我无法更改它。

2个回答

3

一旦数据表被填充了数据,就不能更改列类型。你可以采取以下几种方法:

  1. 如果你使用 DataAdapter 填充表格,你可以使用 DataAdapter.FillSchema() 先获取表格的结构。然后你可以修改列类型,最后再填充数据。

  2. 复制初始表格,更改新表格中的列类型,然后使用 DataTable.ImportRow() 导入旧表格中的每一行。

  3. 创建一个新列,将旧列的值复制到新列中,然后删除旧列。


2
您可以在womp的答案中加入以下选项:
  1. After you get the table full of the data you can add a new DataColumn to the Columns of the data table this way:

    DataColumn dc = new DataColumn("GUIDColumnName",typeof(Guid),"StringColumnName");
    DataTableObj.Columns.Add(dc);
    
如果您的数据量很大,这不会影响性能。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接