[英]How to use a WSDL
我需要使用Web服務。 他們給我發了WSDL文件。 我應該怎么做才能將它添加到我的網站並開始使用它作為代理。 (如果我將它放在虛擬目錄上,它可以被發現,但是它是否授予我與真實Web服務的連接?)
我會啟動Visual Studio,創建一個Web項目(或控制台應用程序 - 無關緊要)。
對於.Net標准:
如果沒有錯誤,您只需設置要用於訪問服務的NameSpace,它就會為您生成。
對於.Net Core
上述任何方法都將生成一個簡單,非常基本的WCF客戶端供您使用。 您應該在生成的代碼中找到“YourservicenameClient”類。
出於參考目的,可以在Obj / debug(或release)/ XsdGeneratedCode中找到生成的cs文件,您仍然可以在TempPE文件夾中找到dll。
創建的服務應該具有WSDL協定中每個已定義方法的方法。
實例化客戶端並調用您要調用的方法 - 這就是全部!
YourServiceClient client = new YourServiceClient();
client.SayHello("World!");
如果需要指定遠程URL(不使用默認創建的遠程URL),則可以在代理客戶端的構造函數中輕松執行此操作:
YourServiceClient client = new YourServiceClient("configName", "remoteURL");
其中configName
是要使用的端點的名稱(您將使用除URL之外的所有設置), remoteURL
是表示要連接的URL的字符串(而不是配置中包含的URL)。
在視覺工作室。
如果沒有錯誤,您應該能夠在對象瀏覽器中看到服務引用以及所有相關方法。
使用WSDL.EXE實用程序從WSDL生成Web服務代理。
你會得到一個很長的C#源文件,其中包含一個如下所示的類:
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Web.Services.WebServiceBindingAttribute(Name="MyService", Namespace="http://myservice.com/myservice")]
public partial class MyService : System.Web.Services.Protocols.SoapHttpClientProtocol {
...
}
在客戶端,消耗Web服務的代碼:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.