SORU
19 AĞUSTOS 2012, Pazar


C# veya bir DataRow kopyasını klonlamak için basit bir yolu?

Basit bir şekilde bir DataRow bir klonu yapmak için arıyorum. Bu Satırın bir anlık görüntü alma ve kaydetme gibi. Orijinal Satır değerlerini o zaman değiştirmekte serbesttir ama hala değişmeyen bir kaydedilmiş bir kopyası var. Bunu doğru şekilde yapmak mı?

    DataRow Source, Destination;
    //Assume we create some columns and fill them with values
    Destination.ItemArray = Source.ItemArray;

Bu sadece Kaynak olarak bir noktaya Anlık. ItemArray başvuru kılacak ya da aslında ayrı bir kopyasını yapar mı? Bunun yerine yapabilir miyim?

    Destination.ItemArray = Source.ItemArray.Clone();

EDİT: ikinci kod parçası aslında derler sanmıyorum.

CEVAP
19 AĞUSTOS 2012, Pazar


ImportRow method Satır kopyalamak için aynı şema ile DataTable DataTable kullanabilirsiniz:

var row = SourceTable.Rows[RowNum];
DestinationTable.ImportRow(row);

Güncelleme:

Yeni Düzenleme ile, inanıyorum:

var desRow = dataTable.NewRow();
var sourceRow = dataTable.Rows[rowNum];
desRow.ItemArray = sourceRow.ItemArray.Clone() as object[];

çalışacak

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • colacas

    colacas

    29 EKİM 2006
  • NikkoNantone

    NikkoNantone

    21 Kasım 2011
  • TWiT Netcast Network

    TWiT Netcast

    27 EKİM 2005