在下面的代码中,我获取datatable
中的值并返回jsonconvert
,但值未返回。有近3000条记录。如果有一些记录正在返回。
[WebMethod]
public static string GetDescriptions()
{
string strLocation = "1";
MastersClient objProductName = new MastersClient();
DataSet Product = objProductName.GetLocationProductMap(int.Parse(strLocation));
DataTable customerTable = Product.Tables[0];
var serializer = new JavaScriptSerializer() { MaxJsonLength = 86753090 };
return JsonConvert.SerializeObject(customerTable).ToString();
}
答案 0 :(得分:1)
确保响应不是太大。您可以在配置文件(web.config)中增加响应大小:
<configuration>
<system.web.extensions>
<scripting>
<webServices>
<jsonSerialization maxJsonLength="86753090" />
</webServices>
</scripting>
</system.web.extensions>
</configuration>
调整maxJsonLength
以满足您的需求,但请注意,响应过大会导致用户等待时间过长。
修改:您可能还需要在appSettings下添加此密钥:
<add key="aspnet:MaxJsonDeserializerMembers" value="50000"/>
答案 1 :(得分:0)
下面的代码将有助于你...
var serializer = new JavaScriptSerializer()
serializer.MaxJsonLength = Int32.MaxValue