2008-10-21 129 views
1

我即將開始將基於C#的桌面應用程序轉換爲基於Web的應用程序。出於幾個原因,我想通過Web服務從邏輯中切除GUI。微軟擁有asmx文件,WCF,並可能在下週在PDC上有新的東西。數據可以通過SOAP,REST,JSON以及其他12種方式傳遞。哪個Web服務框架?

任何人都可以建議我應該開始使用.NET框架嗎?

回答

5

您即將搬到新平臺。我會去WCF。它可以支持您的所有需求。

最初,當您移動時,您可以使用httpBinding,它非常接近ASMX Web服務並基於SOAP。如果您以後需要一些高級功能,那麼您肯定可以使用webHttpBinding,這將爲您提供基於REST和JSON的界面。 WCF是非常強大的編程模型,你一定要轉向它。

1

我投贊成票WCF,舉手。

1

對於像你這樣的桌面應用程序,將數據作爲JSON傳遞並沒有多大意義。它的主要用途是允許從Web瀏覽器更容易地訪問。雖然他們服務於不同的目的,但REST也可以這樣說。

對於兩個.NET應用程序的通信,在我看來,WCF是要走的路。儘管對於很多人來說,ASMX更容易符合他們的思維方式(只需用WebMethodAttribute來修飾某些東西,然後就完成了),但我不會推薦它,因爲缺乏體面的授權/認證/加密(選擇任何)以及其方式使用似乎不再受到微軟的鼓勵。順便說一句,你也可以看一下WSCF - Web Services Contract First。不幸的是,現在你有更多的選擇可供選擇。 :)