c# - 创建 Web 服务 C# ASP.Net

标签 c# asp.net web-services

代码片段如下

namespace RecruiterWebService
{
    /// <summary>
    /// Summary description for Service1
    /// </summary>


    [WebService(Namespace = "http://tempuri.org/") ]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [ToolboxItem(false)]
    public class **Service1** : System.Web.Services.WebService
    {


        [WebMethod]
        public XmlDocument Insert(XmlDocument Jobs)
        { }

        [WebMethod]
        public XmlDocument Update(XmlDocument Jobs)
        { }

        [WebMethod]
        public XmlDocument Delete(XmlDocument Jobs)
        { }

        [WebMethod]
        public XmlDocument Insert(string JobPath)
        { }

        [WebMethod]
        public XmlDocument Update(string JobPath)
        { }

        [WebMethod]
        public XmlDocument Delete(string JobPath)
        { }

        [WebMethod]
        public XmlDocument FeedBack(string UserName, string Password)
        { }


    }
}

我的问题是:-

  1. 如何将 WebService 的名称从 Service1 更改为 Jobs..我尝试这样做,但在添加 WebReference 时出现异常。

  2. 在此 Web 服务中,我使用方法重载,但 aginb 在添加 WebReference 时会抛出异常,并使用我无法理解的消息属性进行建议。

  3. 按照您的建议解决上述两个错误后..我遇到了返回类型的问题。我使用 XMLDocument 作为所有 WEBMethod 的返回类型,但将其添加为客户端的 Web 引用后,方法的返回类型更改为 XMLNode 我该如何解决此问题

等待大家的回复..

最佳答案

1:如果更改类名,则还必须更改 .asmx(或 WCF 的 .svc)页,该页的(文本)标记为 Service1。右键单击 asmx 和“查看标记” - 它应该类似于:

<%@ WebService Language="C#" CodeBehind="Service1.asmx.cs" Class="WebService1.Service1" %>

更改ClassCodeBehind以匹配您当前的设置。

2:ws 1-1 不支持重载。您只需添加一个属性即可为 SOAP 接口(interface)上的每个方法指定唯一的名称。但是,请注意,这将成为您的代理将看到的方法名称。

例如,您可以更改其中一条消息,如下所示:

    [WebMethod(MessageName = "InsertXml")]
    public XmlDocument Insert(XmlDocument Jobs)
    { ... }

现在更新客户端;您(如果您使用 wsdl.exe 等)可能会有一个 InsertXml(...) 方法。

关于c# - 创建 Web 服务 C# ASP.Net,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/298018/

相关文章:

c# - 在服务器标签外设置元素文本

java - WSDL 抽象消息与具体消息

java - 使用 OData 接口(interface)开发 Spring REST 服务

c# - 在vs2013中,全局asa错误处理不再起作用了吗?

c# - 以 Windows XP 为目标平台的 VS 2015 中推荐的内容

c# - 简化异常处理

c# - 如何在 LinkBut​​ton 单击事件上启动电子邮件客户端?

java - 如何调用GpioPinListenerDigital(Pi4J/RaspberryPi)中的Web服务?

c# - 如何使用输入模型发送数据?

c# - 压缩文件时限制内存使用