參考

2010-02-26 73 views
5

可能重複沿着複製C#對象:
Cloning objects in C#參考

我在C#創建的對象說Object1。我需要暫時將這個對象備份到另一個對象,如ObjectOriginal。

但是,如果我做ObjectOriginal = Object1,對對象1的任何更改都會影響ObjectOriginal。我如何去做這件事?

+0

看看http://stackoverflow.com/questions/78536/cloning-objects-in-c – rerun 2010-02-26 09:11:10

回答

2

這一切都取決於Object1實際上是,即它是一個DataTable,一個字符串,或別的東西完全?

寫:

object Object1 = new Thing(); 
object Object2 = Object1; 

你得到了第二次提到你在第一行實例化對象。你需要做的是看「事」,看看它是否有一個複製,克隆或類似名稱的方法,並使用:

object Object1 = new Thing(); 
object Object2 = Object1.Copy(); 

例如,數據表同時提供複製和克隆的方法,其中複製複製兩者DataTable的結構和數據以及Clone只複製結構。

0

如果你想要一個對象的副本,問題總是如下:副本有多深?我的對象中的對象應該發生什麼。如果這些也被複制,如果是的話,他們的參考應該發生什麼?

欲瞭解更多信息在起點this blog post from Brad Abrams