2010-09-23 22 views
1

我有,我已經加入到我的EF實體之一的shared.cs文件,像這樣的自定義字段:在EF4中,有沒有一種方法可以讓未映射的屬性通過電線實現?

public partial class Content 
{ 
    public int Test = 5; 
} 

在客戶端,對於同一類的OnCreated處理程序是這樣的:

partial void OnCreated() 
{ 
    this.Test = 42; 
} 

我已經添加了一個事件處理程序SavingChanges事件這樣的服務器上的背景:

partial void OnContextCreated() 
{ 
    this.SavingChanges += (sender, e) => 
    { 
     foreach (object o in GetChangedEntities()) 
     { 
      if (o is Content) 
      { 
       // Break to see what the value of Test is; 
      } 
     } 
    } 
} 

當我在評論破裂(whic h並不是真正的註釋我的代碼:),Test的值始終爲5.事實上,我似乎無法將它設置爲42,並將其值賦給服務器。

我已經在所有地方設置了斷點,並且該值在客戶端肯定被設置爲42。有什麼我做錯了,還是這種行爲不支持?順便說一句,我也試過這個作爲屬性而不是字段 - 以防萬一。

回答

2

我需要我的屬性/字段標記爲[數據成員]是這樣的:

public partial class Content 
{ 
    [DataMember] 
    public int Test = 5; 
} 

,然後在將它移出shared.cs的文件到CustomProperties.cs(或類似)的文件服務器項目以避免多次移植。現在它穿過電線就好了。

相關問題