Javascript 使用jqueryajax调用c#webservice

Javascript 使用jqueryajax调用c#webservice,javascript,c#,jquery,ajax,web-services,Javascript,C#,Jquery,Ajax,Web Services,当我尝试使用jqueryajax调用c#webservice时,会出现内部服务器错误,如果我直接从浏览器调用它,会出现以下错误 System.InvalidOperationException: newDonor Web Service method name is not valid. at System.Web.Services.Protocols.HttpServerProtocol.Initialize() at System.Web.Services.Protocols.S

当我尝试使用jqueryajax调用c#webservice时,会出现
内部服务器错误
,如果我直接从浏览器调用它,会出现以下错误

System.InvalidOperationException: newDonor Web Service method name is not valid.
   at System.Web.Services.Protocols.HttpServerProtocol.Initialize()
   at System.Web.Services.Protocols.ServerProtocolFactory.Create(Type type, HttpContext context, HttpRequest request, HttpResponse response, Boolean& abortProcessing)
下面是web方法

[WebMethod]
public void newDonor(localDonor donor)
{
    CloudStorageAccount storageAccount = CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting("StorageConnectionString"));

    CloudTableClient tableClient = storageAccount.CreateCloudTableClient();
    CloudTable table = tableClient.GetTableReference("donors");

    table.CreateIfNotExists();
    Donor newDonor = new Donor(donor.FullName, donor.Mobile);

    TableOperation insertOperation = TableOperation.Insert(newDonor);
    table.Execute(insertOperation);}
以下是jquery的ajax方法

  var userInput = {
                FullName: "Lakshman NEW",
                Mobile: "1122004455"
            };

        $.ajax({
            type: "POST",
            contentType: "application/json; charset=utf-8",
            url: "addDonor.asmx/newDonor",
            data: JSON.stringify(userInput),
            dataType: "json",
            error: function (error) {

                alert(error.toString());
                }
            });

可能是什么错误,一切似乎都很好

错误很明显:System.InvalidOperationException:New捐赠者Web服务方法名称无效。请转到asmx测试页面并查找所需的请求,它将显示路由和头的示例。如果没有输入参数,一切正常。当我将json输入作为参数发送时,我遇到了这个问题。天哪,您发送的是json,WebMethods是SOAP,而不是json……您需要将您的C#Method设置为静态!公共静态无效new捐赠者(本地捐赠者)