Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Mengubah Jenis Data Lajur Jadual Data Selepas Ia Diisi?

Bagaimanakah Saya Boleh Mengubah Jenis Data Lajur Jadual Data Selepas Ia Diisi?

Mary-Kate Olsen
Mary-Kate Olsenasal
2025-01-14 12:50:44704semak imbas

How Can I Change a DataTable Column's DataType After It's Populated?

Tidak boleh menukar jenis data? Klon Jadual Data dan tukar lajur

Anda cuba menukar DataType DataColumn dalam DataTable. Malangnya, sebaik sahaja DataTable diisi dengan data, DataTypenya tidak boleh diubah suai secara langsung.

Untuk mencapai matlamat anda, pendekatan yang sedikit berbeza diperlukan: pengklonan data. Begini cara melakukannya:

  1. Clone DataTable: Gunakan kaedah Clone() untuk mencipta versi klon bagi DataTable asal. Ini mencipta Jadual Data berasingan dengan struktur dan skema yang sama seperti jadual asal.
<code>DataTable dtCloned = dt.Clone();</code>
  1. Tukar jenis lajur: Dalam Jadual Data yang diklon, anda kini boleh mengubah suai DataType lajur yang diperlukan.
<code>dtCloned.Columns[0].DataType = typeof(Int32); // 假设原始列为 Double</code>
  1. Import data: Lelaran pada baris DataTable asal dan importnya ke dalam jadual klon menggunakan kaedah ImportRow(). Ini akan memindahkan data dengan nilai asal, tetapi kini dengan DataType yang diubah suai.
<code>foreach (DataRow row in dt.Rows) 
{
    dtCloned.ImportRow(row);
}</code>

Kaedah ini membolehkan anda menukar DataType lajur selepas ia diisi dengan data. Ingat bahawa DataTable asal kekal tidak berubah dan anda akan menggunakan DataTable klon yang diubah suai sebaliknya.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengubah Jenis Data Lajur Jadual Data Selepas Ia Diisi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn