2013-10-11 133 views
0

當我加載到具有相同數據的變量,然後更新其中一個然後另一個更新到,只是好奇爲什麼發生這種情況,我完全是新的,我只是盯着學習:)更新一個變量,更新其他變量

using (var session = Store.OpenSession()) 
{ 
    var Example1 = session.Load<EX1>(string.Format("EX1/{0}", 11)); 
    var Example2 =session.Load<EX1>(string.Format("EX1/{0}", 11)); 
    Example1.DateCreated = DateTime.Now; 
    Example1.CreatedBy = "Anand"; 
    session.SaveChanges(); 
} 

當我檢查例題值已經與例1

回答

4

當您加載Example2的相同的值更新,RavenDB很聰明,看到你已經裝在同一個文檔在這個環節。因此它返回相同的實例。

+0

在asp.net中的會話是通過引用傳遞的,所以我想ravenDb也是這樣做的。在這種情況下'example1'&'example2'會指向同一個對象 – Marco

+0

謝謝Thomas Freudenberg和@Serv –