2011-01-10 24 views
0

我有我的silverlight調用我的WCF服務,它的工作很棒。這是一個基本上返回實體或實體集合的WCF(不是ria)服務。Silverlight:爲業務邏輯(中間WCF服務)使用本地WCF服務? (與正常的WCF服務一起使用Ria服務?)

我真的無法控制它爲Silverlight添加額外的項目。

所以我想,但也許它的糟糕表現DESGIN或..

但有一個本地的WCF服務託管與Asp.net網站託管Silverlight的..我可以使用的業務邏輯這個WCF服務不需要返回實體。例如,silverlight可以調用服務器,然後服務器可以使用PURE .net做些事情。

當然,我仍然需要我的silverlight談談返回實體等我的外部WCF服務..

什麼是實現這一目標的最佳方式,如果所有..

Silverlight的電話本地WCF服務和「IF REQUIRED」本地wcf服務調用外部WCF服務(它返回實體等),並且所有事情都會從鏈中返回。

或Silverlight根據需要調用本地WCF服務或外部WCF服務。

有一個第三選擇,但我自言自語,也許它不適合...但有RIA服務,使Silverlight的可以稱之爲....但我又無法擺脫的或有控制我其他wcf服務...所以silverlight需要調用兩個或者ria服務可以調用wcf服務......但是這是我有疑問的地方......因爲RIA服務通常返回IQUERYABLE例如...我的wcf服務返回例如,ILIST如果ria服務調用我的wcf服務,它會收到一個ILIST ..因此,ria服務中的[QUERY]屬性要求我返回IQUERYABLE,但這是不可能的,因爲我已經在ILIST中。

我真的很感激一些反饋到天氣我完全缺少點或逸岸它是個好主意。

事實上,silverlight有時需要在服務器上做標準的東西,但與數據訪問或實體無關...我無法控制外部wcf服務,所以我不能只是插入一個新的方法當它需要silverlight時。

有人使用類似的系統,PROS/CONS?

在此先感謝

回答

1

我覺得你的應用程序只能使用RIA服務,然後利雅服務應該連接到外部服務。然後,所有邏輯都在服務器上,而您的SL應用程序使用簡單的服務模型。你可以考慮所有的業務邏輯都在服務器上。

什麼返回的IQueryable你總是可以「轉換」列表IQueryable的使用LINQ,但我認爲你可以從RIA服務返回列表 - 它shoudn't是一個問題。