从WSDL文件创建ASMX Web服务

时间:2009-02-14 01:28:29

标签: asp.net web-services wsdl asmx

我有一个WSDL文件,我正在尝试创建一个符合WSDL的Web服务。

我使用使用现有服务的WSDL文件创建了客户端,但我从未创建过需要遵循特定WSDL的Web服务。

我已经离开了:

wsdl.exe mywsdl.wsdl /l:VB /serverInterface

现在我有一个从该WSDL生成的.vb文件。但是我不确定我应该用这个VB文件做什么。看起来它有一个公共接口,但没有实现接口的类。它还为WSDL中的类型提供了一堆部分类。

我期待有一些存根,我在其中放入代码来完成服务调用。我之前只创建了简单的Web服务,但没有一个使用公共接口,所以我不熟悉这里发生的事情。

此时我不确定如何使用生成的.vb文件并使其与.asmx文件一起使用,以及完成界面需要哪些其他编码。

2 个答案:

答案 0 :(得分:34)

如果您已经创建了接口,则需要实现这些接口 只需创建新的Web服务并添加您生成的接口,以便它继承该接口。 Visual Studio可以为接口中的每个方法自动生成存根。使用WebMethod属性标记它们,并放置一些将返回一些测试数据/结果的代码。

如果你有inteface(还有一些自动生成的属性:


public interface IRealWebService
{
    string GetName();

}

您应该提供新服务:


public class WebTestService : System.Web.Services.WebService, IRealWebService
{

    #region IRealWebService Members

    [WebMethod]
    public string GetName()
    {
        return "It Works !!!!";
    }
    #endregion
}

答案 1 :(得分:4)

您需要做的就是创建一个继承自WSDL.EXE生成的接口的类,然后从接口实现这些方法。