【问题标题】:Ajax Post to Overloading c# web service methodAjax Post to Overloading c# web service方法
【发布时间】:2017-03-24 06:13:17
【问题描述】:

我在 C# 中有一个 webService,当我不重载它时它可以完美运行。 当我重载并使用 ajax 发布时,它会报错。

$.ajax({
    type: "POST",
    url: "http://localhost:6783/asd.asmx/add",
    data: data,
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function (msg) {
        console.log(msg);
    },
    error: function () {
        alert("this error");
    }
});

在 C# 中

[WebMethod(MessageName = "add2")]
public int add(int a,int b)
{
    return a+b;
}

[WebMethod(MessageName = "add3")]
public int add(int a, int b, int c)
{
    return a + b + c;
}

我添加了这个:

[WebServiceBinding(ConformsTo = WsiProfiles.None)]

当我测试网络服务时,它可以工作。但是,当我使用 ajax 调用时,它不起作用。

【问题讨论】:

  • 您遇到了什么错误? CORS?
  • 未知网络方法添加。参数名称:methodName 说明:当前web请求执行过程中发生了未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。异常详细信息:System.ArgumentException:未知的 Web 方法添加。参数名称:methodName 源错误:在执行当前 Web 请求期间产生了未处理的异常。可以使用下面的异常堆栈跟踪来识别有关异常起源和位置的信息。
  • 您正在调用addnumber - 该方法不存在。至少在您提供的示例代码中没有
  • 我改了添加。

标签: c# jquery ajax web-services


【解决方案1】:

如果添加 MessageName 属性,则必须使用 MessageName 作为端点。 例如myservice.asmx/mymessagename

此页面http://www.c-sharpcorner.com/UploadFile/00a8b7/web-service/ 说:

“SumOfNums MessageName="SumOfFloats"”方法将被称为 客户端应用程序的“SumOfFloats”。

【讨论】:

猜你喜欢
  • 2019-05-31
  • 1970-01-01
  • 2015-04-10
  • 2015-08-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多