2011-01-13 118 views
1

我有一個名爲Product的實體,具有ProductCode屬性。我想在ProductCode屬性上透明地維護一個前綴,該前綴對應用程序的其餘部分是不可見的,但在實體中保留。實體框架覆蓋屬性獲取

我能做到這一點,設置前綴:

partial void OnProductCodeChanged() 
    { 
     if (EntityState != System.Data.EntityState.Detached) 
     { 
      if (this.ProductCode.Length == 11) 
      { 
       this.ProductCode = "AAA" + this.ProductCode; 
      } 
     } 
    } 

這工作,但我怎麼可以重寫產品代碼的get當物體被取出自動剝離「AAA」的前綴?

回答

1

爲什麼不添加一個內部屬性這樣

internal string InternalProductCode 
{ 
    get 
    { 
      return String.Format("AAA-{0}",this.ProductCode); 
    } 
} 

然後使用,當你需要的前綴碼...

+0

我需要的前綴值實際上是在數據庫供以後出口。我目前只是爲了閱讀目的而與另一個neame簽署財產,但希望有一個更好的方法。 – Craig 2011-01-13 17:11:46