在ASP.NET中通过AJAX从Web服务获取对象时出现500错误

时间:2014-11-21 07:59:20

标签: jquery asp.net ajax web-services

我在向Web服务发出AJAX请求时遇到问题。

我正在尝试连接到Web服务并返回一个对象来填充HTML表单及其数据进行编辑。

AJAX代码:

$.ajax({
    type: "GET",
    url: "WebService.asmx/UpdateNewGroup",
    data: "{ id : '7'}",
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function (data) {
        var myData = JSON.parse(data.d); // data.d is a JSON formatted string, to turn it into a JSON object
        alert("s");
    }
});

网络服务:

[WebMethod]
public MeGroup UpdateNewGroup(String id)
{
    MeGroup group = new MeGroup();
    return group;
}

这是我发送请求时收到的错误:

500 (Internal Server Error) 

Web服务的路径是正确的,我在服务的web.config中启用了POST和GET请求。

我能错过什么?

修改

以下是我根据J0e3gan的评论找到的错误消息:

  

只能从脚本中调用类定义中具有[ScriptService]属性的Web服务。

1 个答案:

答案 0 :(得分:3)

根据您在回复我的评论时分享的错误详情,将ScriptService属性添加到您的服务类,如下所示:

[WebService(Namespace = "http://yournamespace/")]
[ScriptService]
public class Your service
{
    [WebMethod]
    public MeGroup UpdateNewGroup(String id)
    {
        MeGroup group = new MeGroup();
        return group;
    }
}