2013-05-21 83 views
0

我想從我的silverlight站點公開一些odata資源。 WCF數據服務不提供我需要的功能,所以我需要使用ASP.NET Web API。Hosting ASP.net web api(odatacontroller)在silverlight站點內

是否有可能在Silverlight網站內部託管ASP.Net web api?

請求的支持是:在返回結果之前過濾資源的IQueryable。在WCF數據服務中,您可以只使用queryinspectors,它們會對每行進行分隔過濾,這會影響性能。

謝謝!
伊蘭。

回答

0

您可以在任何ASP.NET Web應用程序中託管ASP.NET Web API,因此它可以工作。是的,可以在返回數據之前過濾IQueryable。查看Web API源代碼中的OData示例,瞭解可以如何完成的一些示例。你對WCF的假設是不正確的,QueryInspector在進入數據存儲之前修改了LINQ表達式,因此數據在存儲中被過濾,而不在內存中。

+0

謝謝你的回覆。我會嘗試你的建議。我知道QueryInspector修改表達式,但在我的情況下,我需要檢查記錄是否存在於內存中存儲的列表中。我不想將該列表發送到數據庫,因爲它可能是一個很長的列表。 –