返回String时的VB.NET

时间:2016-01-09 19:05:32

标签: javascript jquery ajax vb.net

我有一个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

1 个答案:

答案 0 :(得分:0)

找出问题所在。结束JSON字符串大小有限。我在web.config中添加了以下内容,一切都很好!

    <scripting>

      <webServices>

        <jsonSerialization maxJsonLength="2147483644"></jsonSerialization>

      </webServices>

    </scripting>

  </system.web.extensions>