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

  • Blunty

    Blunty

    13 Mart 2006
  • Jonathan Morrison

    Jonathan Mor

    24 Mart 2010
  • Tahir Jahi

    Tahir Jahi

    6 Mart 2006