我有一个WSDL文件,我正在尝试创建一个符合WSDL的Web服务。
我已经使用消耗现有服务的WSDL文件创建了客户端,但是我从未创建过需要遵循特定WSDL的Web服务。
我已经尽力使用:wsdl.exe mywsdl.wsdl /l:VB /serverInterface
现在,我从该WSDL生成了一个.vb文件。但是我不确定该VB文件应该怎么做。看起来那里有一个公共(public)接口(interface),但是没有实现该接口(interface)的类。它还为WSDL中的类型提供了一堆局部类。
我期望在代码中放置一些存根,以完成服务调用。我之前仅创建了简单的Web服务,并且它们都没有使用公共(public)接口(interface),因此我不熟悉这里发生的事情。
在这一点上,我不确定如何使用生成的.vb文件并使它与.asmx文件一起使用,以及完成该接口(interface)需要额外的编码。
最佳答案
如果已经创建了接口(interface),则需要实现这些接口(interface)。
只需创建一个新的Web服务并添加您生成的接口(interface),使其从该接口(interface)继承即可。 Visual Studio可以自动为接口(interface)中的每个方法生成存根。用WebMethod属性标记它们,并在其中放入一些代码,这些代码将返回一些测试数据/结果。
如果您具有此界面(具有一些自动生成的属性):
public interface IRealWebService
{
string GetName();
}
您应该提供一项新服务:
public class WebTestService : System.Web.Services.WebService, IRealWebService
{
#region IRealWebService Members
[WebMethod]
public string GetName()
{
return "It Works !!!!";
}
#endregion
}