【发布时间】:2012-01-19 13:57:11
【问题描述】:
所以我有一些问题。问题的目标是,当我尝试使用 Ajax 从用户控件调用 Web 服务时,我得到 500 Internal Server Error。
这是我的代码示例:
网络服务.CS
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.Services;
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class BudgetJson : System.Web.Services.WebService {
public BudgetJson ()
{
}
[WebMethod]
public static String GetRecordJson()
{
return " Hello Master, I'm Json Data ";
}
}
用户控制 (.Ascx) 文件(Ajax 调用)
$(document).ready(function () {
$.ajax({
type: "POST",
url: "BudgetJson.asmx",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg)
{
alert(msg);
}
});
});
所以,当页面加载并发送请求时,我得到了这样的响应:
soap:ReceiverSystem.Web.Services.Protocols.SoapException: 服务器是 无法处理请求。 ---> System.Xml.XmlException:数据位于 根级别无效。第 1 行,位置 1。在 System.Xml.XmlTextReaderImpl.Throw(异常 e)在 System.Xml.XmlTextReaderImpl.Throw(String res, String arg) at System.Xml.XmlTextReaderImpl.ParseRootLevelWhitespace() 在 System.Xml.XmlTextReaderImpl.ParseDocumentContent() 在 System.Xml.XmlTextReaderImpl.Read() 在 System.Xml.XmlTextReader.Read() 在 System.Web.Services.Protocols.SoapServerProtocol.SoapEnvelopeReader.Read() 在 System.Xml.XmlReader.MoveToContent() 在 System.Web.Services.Protocols.SoapServerProtocol.SoapEnvelopeReader.MoveToContent() 在 System.Web.Services.Protocols.SoapServerProtocolHelper.GetRequestElement() 在 System.Web.Services.Protocols.Soap12ServerProtocolHelper.RouteRequest() 在 System.Web.Services.Protocols.SoapServerProtocol.RouteRequest(SoapServerMessage 消息)在 System.Web.Services.Protocols.SoapServerProtocol.Initialize() 在 System.Web.Services.Protocols.ServerProtocol.SetContext(类型类型, HttpContext 上下文、HttpRequest 请求、HttpResponse 响应)在 System.Web.Services.Protocols.ServerProtocolFactory.Create(类型类型, HttpContext 上下文,HttpRequest 请求,HttpResponse 响应, Boolean& abortProcessing) --- 内部异常堆栈结束 追踪---
如果我将方法名称添加到 url,我得到这样的错误:
未知的网络方法 GetRecordJson。参数名称:methodName 说明:执行过程中发生未处理的异常 当前的网络请求。请查看堆栈跟踪以获取更多信息 有关错误的信息以及它在代码中的来源。
异常详细信息:System.ArgumentException:未知的网络方法 GetRecordJson。参数名称:方法名
任何解决方案?
【问题讨论】:
标签: asp.net web-services internal-server-error