返回的数据将不会输出到我的文本框
lstNominalAccounts = NominalAccount.FindUserNominalAccounts(
basePage.CurrentSageDatabase,
searchText,
basePage.CurrentUser.UserID);
foreach (NominalAccount oNominal in lstNominalAccounts)
{
strBuilder.Append(oNominal.AccountName + " " + oNominal.AccountNumber + " " + oNominal.CostCentre + " " + oNominal.Department + ":");
}
strBuilder = strBuilder.Remove(strBuilder.Length -1,1);
return strBuilder.ToString();
//When i hover over the returned strBuilder it shows the record that ive typed in for //autocomplete but it wont output to my textbox(#tbNominalAccounts)
//this is my success statement on my ajax autocomplete if that helps also
success: function (data) {
var datafromServer = data.d.split(":");
source: datafromServer;
},
在您的评论中,您说因为超出JavascriptSerializer.maxJsonLength
属性的值而得到例外。
查看msdn该文件的财产。
您可以在您的Web.config中更改该值,但我建议您检查是否有可能减少您发送的数据量,因为maxJsonLength
默认为4MB,对于我认为应该足够大的Web应用程序:
<configuration>
<system.web.extensions>
<scripting>
<webServices>
<jsonSerialization maxJsonLength="50000000"/>
</webServices>
</scripting>
</system.web.extensions>
</configuration>
编辑
你的第二个问题,关于401 - 未经授权:
当使用pagemethods你必须允许访问TH据我所知,整个页面。 当您的页面包含可用于验证用户的其他方法或代码时,可以将pagemethod移动到另一个页面或创建asmx webservice。
您可以编辑你的web.config包括configuration
下<location>
标签:
<location path="Datenschutz.aspx">
<system.web>
<authorization>
<allow users="?" />
</authorization>
</system.web>
</location>
耶已经做到了,但谢谢!我现在有另一个问题'401未经授权'上发布方法'GetUserNominalAccounts'你知道我怎么可以允许匿名访问? –
取决于您使用的框架。 MVC? Web表单?还有别的吗?你如何授权你的用户?你在哪个上下文中调用你所显示的代码(MVC动作,静态页面方法,webserice)? – Jan
.net framework 3.5,asp.net webforms,我打电话给一个静态页面方法,不知道我们如何授权我们的用户我没有设计我们的应用程序 –
你必须表现出更多的信息。你是否检查过提琴手通过电线传输的东西?所以你看到任何JavaScript错误?任何.NET异常? – Jan
没有javascript错误!它发布在搜索文本中键入的值,但是没有响应 –
“使用JSON JavaScriptSerializer进行序列化或反序列化期间出现错误,字符串的长度超过了maxJsonLength属性中设置的值。 –