我正在尝试使用.ashx
显示以JSON格式从jsrender
文件发送的数据。如何将List<>
集合中的数据转换为ashx
文件中的JSON,并使用jsrender
在客户端中呈现它?这是我正在使用的代码:
处理程序(.aspx)文件:
List<repo1> listRec = new List<repo1>();
OracleDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
while (dr.Read()) {
repo1 objRec = new repo1(dr.GetString(0), dr.GetString(1));
listRec.Add(objRec);
}
String ex = javaScriptSerializer.Serialize(listRec);
context.Response.Clear();
context.Response.ContentType = "application/json";
context.Response.Write(ex);
客户方:
function getDetails(va){
$.ajax({
url: "bll_data.ashx",
contentType: "application/json; charset=utf-8",
data: { "ex": va, "method": '3' },
dataType: "json",
success: displayReport,
error: OnFail
});
}
function displayReport(dataobt){
$("#exg").html($("#ExgTemplate").render(dataobt));
}
如果我可以在客户端获得此格式的dataobt
:
[{ ecode: "1", "ename": "xxxx" },
{ ecode: "2", "Name": "yyyy" },
{ ecode: "3", "Name": "zzzz" }
]
displayReport(dataobt)函数will work我现在在客户端获得的输出(alert(dataobt);
)是一系列“[object Object],[object Object] ...”。我认为对象正被添加到List<>
。
客户端的转换是我认为问题所在。
有人可以更正代码吗?