【发布时间】:2011-07-07 14:54:07
【问题描述】:
我实现了以下 web 方法(文件 Notes.asmx):
[WebMethod(EnableSession = true)]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public object getNotesData ()
{
Guid contactId = new Guid("dc53b9a3-bde1-4810-88dd-3db2581f29b8");
var data = BusinessObjectFactory.GetContactNotes(contactId);
string serialized = new JavaScriptSerializer().Serialize(data);
return serialized;
}
该方法仅返回一些引用联系人的数据。 我单独测试了这个方法,它正确地返回了记录。
在一个 aspx 页面中,我使用以下 Flexigrid 语法调用此 Web 方法来检索数据:
$(function ()
{
$("#flex1").flexigrid(
{
url: 'WebService/Notes.asmx/getNotesData',
dataType: 'json',
colModel : [
{ display: 'NOTEID', name: 'NOTEID', width: 40, sortable: true, align: 'left' },
{ display: 'Title', name: 'Title', width: 150, sortable: true, align: 'left' }
],
sortname: "Title",
sortorder: "asc",
usepager: true,
title: "Notes_TITLE",
useRp: true,
rp: 10,
showTableToggleBtn: false,
resizable: false,
width: 500,
height: 370,
singleSelect: true
}
);
});
但是调试代码我发现从 flexigrid 调用中永远无法到达服务器。在浏览器中,aspx 页面在 Flexigrid UI 中有一个“连接错误”。
我使用通过 Ajax/Json 和 jQuery 调用的其他 Web 方法,它们工作正常。这不是路径错误的问题,因为 aspx 文件保存在同一台服务器上,并且位于包含 Web 服务的目录(名为 WebService 的文件夹)之上的目录中。
有什么建议为什么我无法使用 Flexigrid sintax 访问服务器?
【问题讨论】:
标签: asp.net json jquery-plugins webmethod