2017-08-15 78 views
0

這是我想要生成的代碼文件的一部分。這是一個較舊的WCF項目,所以我不熟悉。有了新的服務項目,我只需單擊右鍵並選擇更新服務參考。需要爲WCF服務創建服務接口類。

using System; 
`//------------------------------------------------------------------------- 
----- 
// <auto-generated> 
//  This code was generated by a tool. 
//  Runtime Version:4.0.30319.269 
// 
//  Changes to this file may cause incorrect behavior and will be lost if 
//  the code is regenerated. 
// </auto-generated> 
//-------------------------------------------------------------------------- 
---- 


[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", 
"4.0.0.0")] 
[System.ServiceModel.ServiceContractAttribute(ConfigurationName = 
"IBusinessService")] 
[CLSCompliant(false)] 
public interface IBusinessService 
{ 

[System.ServiceModel.OperationContractAttribute(Action = "http://tempuri.org/IBusinessService/Receive_Replenishment_Request", ReplyAction = "http://tempuri.org/IBusinessService/Receive_Replenishment_RequestResponse")] 
int Receive_Replenishment_Request(System.Nullable<int> Module, System.Nullable<int> Level, System.Nullable<int> Side, System.Nullable<int> Row, string User); 

該文件是在比其具有[的ServiceContract]屬性BusinessService.cs和IBuesinessService.cs一個單獨的項目。

是否有我必須運行的工具來生成服務引用類?我需要更新此服務參考。

+0

目前尚不清楚你想要做什麼。你想生成定義服務的接口嗎?或者你想生成消費者代碼? –

回答

1

據我所知,「添加服務引用」窗口僅僅是包裝Svcutil(或者它們調用相同的API)。您可以從命令提示符執行該工具。

如果你的服務,你想爲真正運行和訪問元數據生成客戶端,它是那樣簡單

svcutil http://service/metadataEndpoint 

要生成的「代理」,形成服務客戶端類和數據類型。

如果您不能運行該服務,或者如果它不能暴露元,我猜你需要從組件包含的服務的.wsdl導出元數據和xsd文件:

svcutil.exe ServiceAssembly.dll 

然後從這些文件生成客戶端:

svcutil.exe YourServiceName.wsdl 

又見How to generate WCF service with SvcUtil.exe

+0

所以看起來這不是真正的服務參考,而只是一個界面。我不確定它是如何創建的?這個svcutil會創建一個接口文件嗎? – Mitch

+0

我在回答中更改了第二句。是的,Svcutil.exe將生成一個表示該服務的接口以及一個充當該服務客戶端的代理類。 – CodeCaster