5

stringタイプとして設定されたGUIDのDataColumnを、タイプがであるGUIDのDataColumnにどのように変換しますGuidか?ソースデータの列のタイプが間違っているため、そこで変更できません。

4

2 に答える 2

3

データテーブルにデータが入力されると、列の型を変更できなくなります。あなたが取ることができるいくつかのアプローチがあります:

  1. DataAdapterを使用してテーブルを埋める場合は、 を使用DataAdapter.FillSchema()して最初にテーブルの構造を取得できます。次に、列の型を変更して、データを入力できます。

  2. 最初のテーブルを取得して複製し、新しいテーブルの列の種類を変更してから、 を使用DataTable.ImportRow()して古いテーブルから各行をインポートします。

  3. 新しい列を作成し、古い列の値を新しい列にコピーして、古い列を削除します。

于 2010-01-05T06:51:07.663 に答える
2

次のオプションを womp の回答に追加できます。

  1. テーブルがデータでいっぱいになったら、次の方法で新しい DataColumn をデータ テーブルの列に追加できます。

    DataColumn dc = new DataColumn("GUIDColumnName",typeof(Guid),"StringColumnName");
    DataTableObj.Columns.Add(dc);
    

データ量が膨大な場合、これによりパフォーマンスが低下することはありません。

于 2010-01-05T09:49:11.337 に答える