我有一个VB.NET函数,通过前端的AJAX调用。 AJAX调用传回一些参数,后端的函数生成一个HTML表,并将其作为字符串返回到前端。例如,我会得到类似的内容:<table><tr><td>hello</td></tr></table>
。
我的VB功能如下:
Public Shared Function MakeTable(arg1, arg2) as String
' Do magic
return myTableInStringFormat
End Function
我在使用我的代码时遇到了一些问题,并将其缩小到来自后端的字符串的长度。当返回的字符串大于65535个字符时,它不会到达前端。我认为这与以下内容有关:https://msdn.microsoft.com/en-us/library/wdzat713.aspx
如何在避免字符串字符行限制的同时返回数据?行继续字符似乎是答案,但由于我需要返回一个字符串,我不确定如何使用它们。
EDIT1:更多代码。这是我的AJAX回发代码,以及表附加代码:
function GetMyTable(arg1, arg2) {
type: "POST",
url: myHandler.ashx/MakeTable",
data: "{'arg1':'" + arg1+ "','arg2':'" + arg2+ "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
$("#myTable").empty().append("").append(msg.d);
},
error: function () {
alert("Failed to load ");
}
});
}
EDIT2。这是AJAX调用的后端函数:
<System.Web.Services.WebMethod()> _
Public Shared Function MakeTable(arg1 As String, arg2 As String) As String
Dim dString As New StringBuilder
' Some datareader gets data from database...
dString.Append("<tr><td>hello</td></tr>")
return dString.toString()
End Function
答案 0 :(得分:0)
找出问题所在。结束JSON字符串大小有限。我在web.config中添加了以下内容,一切都很好!
<scripting>
<webServices>
<jsonSerialization maxJsonLength="2147483644"></jsonSerialization>
</webServices>
</scripting>
</system.web.extensions>