我在Visual Studio中创建了一个Ajax网站,添加了一个带文本框和按钮的简单页面,当我点击按钮一切正常后,当我点击两次时我得到错误
Sys.WebForms.PageRequestManagerServerErrorException:在服务器上处理请求时发生未知错误。从服务器返回的状态代码是:500
这是我的页面
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<div>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
</ContentTemplate>
</asp:UpdatePanel>
</div>
</form>
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) TextBox1.Text = "aaa" End Sub
编辑〜我在更新面板之外向页面添加了第二个按钮,当我点击更新面板内的那个按钮然后在面板外面的那个按钮时出现错误
无法打开登录请求的数据库“ASPState”。登录失败。 用户'server \ user'登录失败。 描述:执行当前Web请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
异常详细信息:System.Data.SqlClient.SqlException:无法打开登录请求的数据库“ASPState”。登录失败。 用户'server \ user'登录失败。
为什么会这样?
编辑〜要解决我的问题,我做了
<sessionState mode="StateServer"
stateConnectionString="tcpip=localhost:42424"
cookieless="false"
timeout="20"/>
答案 0 :(得分:0)
你试过了吗? http://forums.asp.net/t/1044963.aspx
此外,尝试删除TextBox1.Text = "aaa"
行,看看是否仍然出现错误。
答案 1 :(得分:0)
看起来您的问题是您的会话状态已配置为使用SQL服务器,并且您将其更改为状态服务器服务以使其工作。您是否也尝试过InProc会话状态?
答案 2 :(得分:0)
添加这个
validateRequest="false" enableEventValidation="false"
到页面部分