試圖找出完成此操作的最佳方法。所以,我有商店與性能表:使用ADO.NET數據服務返回實體+額外數據
STOREID,名稱,經緯度等
我使用ADO.NET數據服務(道夫)來創建一個Web服務,將顯示附近的商店給定半徑和座標。我做了一個服務操作來獲取參數並將結果作爲IQueryable返回。到現在爲止還挺好。
所以現在我有這樣的事情:
return context.Stores.Where(...distance calculation...);
這個偉大的工程,但我也想從給定的半徑返回每個店的距離。我已經計算過了,但我應該如何將距離和商店數據一起包括在內?我是否應該使用Store和距離的屬性來創建類似StoreSearchResult的類?
如果我只是使用SQL,我可以編寫一個數據庫查詢,它將返回Store的所有數據以及距離列。喜歡的東西:
Select StoreID, Name, Latitude, Longitude, (calculation...) as Distance
from Store
where ...distance param...
所以我在尋找發回原來的存儲數據+距離計算,同時還返回IQueryable的最好的方式。我寧願不採取IEnumerable並使用AsQueryable ...我只是覺得應該可以保持它「關閉」數據庫查詢,並且我可能只是缺少一些東西。
感謝您的回覆!你的第一個答案類似於我已經熟悉的東西,但它只讓我到IEnumerable,它不支持與IQueryable相同的東西。我可以使用AsQueryable,但它不像找到返回單個db語句的方法那麼紮實。 – 2009-11-21 00:04:03