0

我構建了我的實體模型。我的一個業務對象,我們稱之爲Store有一個空間數據類型。我很快發現空間字段沒有通過EF4映射。不過我掙扎着我的出路,通過編輯定義下面這樣的查詢XML聲明:WCF Ria Services如何製作一個客戶端已知的定製實體?

<EntitySet Name="Stores" EntityType="Eltrun.OnShelfAuditModel.Store.Stores"> 
    <DefiningQuery> 
     SELECT [rowId], [storeName], [location].STAsText() as location FROM Stores 
    </DefiningQuery> 
    </EntitySet> 

在這一點上,我決定通過這樣的部分類定製我的實體店,只是進行轉換,仍然保持存儲SQLGeography數據,只返回一個double []在客戶端(因爲我不能回到既不SqlGeography,無論是位置應(Bing數據類型)。

public partial class Store 
{ 
    public double[] StoreLocation 
    { 
     get 
     { 
      SqlGeography geoLocation = SqlGeography. 
       STPointFromText(new SqlChars(this.location.ToCharArray()), 4326); 
      return new double[]{ 
          (double)geoLocation.Lat, 
          (double)geoLocation.Long};     
     } 
    } 

}

我怎樣才能讓知道存儲的數據類型我的小定製,在c有利的項目? 謝謝!

回答

1

只需將一個setter添加到您的屬性,並且RIA Services代碼生成器和序列化程序應該在客戶端的Store類版本上創建等效屬性。

希望可以幫到...

相關問題