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

  • ChrisCrossMedia

    ChrisCrossMe

    17 EYLÜL 2009
  • FASHTAG

    FASHTAG

    5 EYLÜL 2012
  • Numberphile

    Numberphile

    15 EYLÜL 2011