我有一個使用sqlgeography的實體/表。實體部分類中的屬性
由於EF 4.X不支持空間類型,我只是來回發送字段的字節。
我已經在處理代碼端的對話和屬性的數據庫端存儲了procs來完成這項工作。
要在代碼中添加屬性,我使用了部分類。
其中一個屬性是SqlGeography,它只是簡單地包裝byte []屬性來處理獲取和設置。
使用NotMappedAttribute從EF隱藏此屬性。
另一個是暴露byte []本身的屬性,並用EdmScalarPropertyAttribute和DataMemberAttribute裝飾。
然後我去EF模型設計器(* .edmx)指向Insert/Update/Delete存儲過程的實體模型。
它發現存儲的過程是正常的,並意識到它們(在適當時)採用VARBINARY參數。
它還有一個下拉菜單,允許您選擇映射到該參數的實體類的屬性。
但是,此下拉列表不會列出我的任何屬性。我不關心SqlGeography屬性,因爲它意味着對EF隱藏,但是對於我來說,能夠將它指向byte []屬性非常重要,因爲這是數據的來源。
我非常想避免數據庫觸發器或包裝類和附加字段來使其工作。
我試着手動編輯.edmx文件以包含byte []屬性,但它只是抱怨它未映射。
任何人都可以給我一些見解,如何讓這個工作?還是選擇最終結果的另一種方法?