2011-12-15 72 views
0

這是我的功課,很難!
我需要使用ASP.NET MVC構建一個在線測驗,它包含一個桌面版本(WPF),它可以使用XML Web Service - WCF與Web版本共享數據。我的老師沒有具體說明什麼樣的XML Web服務,經過一些研究,我選擇了SOAP,因爲SOAP是W3C推薦的,這裏是我的計劃:需要關於WCF SOAP服務和ASP.NET MVC的一些說明

A.當用戶在網站oe桌面應用程序中編寫測驗時, submitsion會將數據發送給WCF服務。不同類型的項目列表發送到服務器並將其保存到數據庫。

B.當用戶進行測驗時,所有的數據都會提交給WCF服務,並且總點也由WCF服務返回。

在對MSDN進行了一些研究之後,我發現WCF可以處理SOAP,但是我找不到任何文檔告訴我如何做到這一點。要麼我是SOAP新手來處理A和B操作。

我已經發現了一些文件,關於使用WCF與實體框架和代碼第一: http://msdn.microsoft.com/en-us/data/gg601462 http://blogs.msdn.com/b/adonet/archive/2011/03/21/using-wcf-data-services-with-entity-framework-4-1-and-code-first.aspx

這些文檔幫助我建立一個Web服務,並從我的數據庫中檢索數據,我認爲這是不是在SOAP樣式。
所以現在,我想我需要的是:

  • 一些建議什麼樣的XML Web服務的。
  • 一些文檔告訴我如何使用WCF處理SOAP,如果你說SOAP可以用於應用程序。

非常感謝您的分享!

回答

1

我不會爲你完成你的功課......但我會讓你開始如何以簡單的方式使用WCF服務。

首先,WCF可以使用SOAP,JSON或許多其他傳輸方法。默認情況下,如果您使用的是asp.net應用程序並且它調用WCF服務,則它使用SOAP。 WCF使用的XML比您可能需要構建的簡單SOAP調用複雜得多。

其次,要從asp.net應用程序使用WCF服務,您可以讓Visual Studio創建「代理」代碼,以處理所有基本xml內容。

要做到這一點,請在Visual Studio中的Solution Explorer中右鍵單擊項目名稱,然後單擊「添加服務引用」。輸入您的服務的網址(http://localhost:9821/service.svc)。它會自動發現那裏的WCF服務信息。請注意「命名空間」。該命名空間是代理代碼的保存位置。

如果您的服務名稱空間是「MyService」,那麼在您的應用程序代碼中,您將「導入/使用」該名稱空間。 又名:Imports MyService

那麼你的代碼將使用它:

Dim serviceclient as new MyService.ServiceClient 
serviceClient.myWCFFunction(); 
+0

感謝您的幫助!我已經知道如何將WCF服務添加到MVC應用程序中(就像我在我的問題中所說的那樣)。但是你確定WCF默認調用SOAP?爲什麼我閱讀SOAP只是爲了接收POST數據? – nvcnvn 2011-12-15 15:43:42