Visual Studio 2008でASP.NETでVirtual Basicを使用しています.WebMethodを使用してクライアントとの間で通信しています。データを照会して少量返すことができますが、比較的大量のデータを取得しようとするとServer 500エラーが返されます。私のデータは226561文字の長さなので、それほど大きくはありませんが、私の他の作業テストセット(これは約10キロ長さです)よりもかなり大きいです。比較的大きい文字列を返すときにWebMethodが機能しない
はJavaScript:
PageMethods.my_func("context", success);
function success(result, userContext, methodName) {
alert("success!");
}
失敗仮想基本コード:
<System.Web.Services.WebMethod()> _
Public Shared Function my_func(ByVal context As String) As IEnumerable
var result = "..." '200k characters long
Return result
End Function
成功した仮想の基本コード:
<System.Web.Services.WebMethod()> _
Public Shared Function my_func(ByVal context As String) As IEnumerable
var result = "..." '10k characters long
Return result
End Function
私はWebMethod属性は、文字列の長さの制限を返さ高めるために変更することができます何があります?長さの制限がありますか、それとも私が見ることができなかったいくつかの他の問題ですか?
は、なぜあなたはIEnumerable' ''としてSTRING'を戻ってきていますか? –
これはチュートリアルで私に言われたことです。私は実際に結果を返す前に私自身のシリアル化を行います。それは冗長ですか? – Bill
文字列へのシリアライズを実行した場合、メソッドを 'IEnumerable'ではなく単に' string'を返すように宣言するよりも、 –