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ş:
Datarow datatable dizi dönüştürmek içi...
Bir nesneyi klonlamak için en etkili y...
Bir liste python değeri öğe silmek içi...
Maven bir pom.xml kullanılmayan bağıml...
Konu gidişli veya etiketleri hesaplama...