gpt4 book ai didi

c# - ASP.NET DropDownValue 不会跨 webfarm 中的一台服务器持久保存

转载 作者:行者123 更新时间:2023-11-30 17:24:18 24 4
gpt4 key购买 nike

我有一个问题,DropDownListone 服务器上的 PostBack 之后丢失了它的 SelectedValue网络农场。在其他服务器上,一切正常。

所有服务器都使用相同版本的代码,具有相同的服务包和应用的所有更新。当我在本地机器上运行时,代码也能正常工作(但指向生产数据库)。

我认为 ViewState 可能是问题所在,但我确认 web.config、aspx 页面和代码在所有机器上都是相同的。

我确实收到了 Input string was not in a correct format. 在尝试 Convert.ToInt32() 时出错。

我添加了 Trace.Write 来确定 DropDownList 值在这个特定服务器上是null .

代码片段

protected void Page_Load(object sender, System.EventArgs e)
{
if (!Page.IsPostBack)
{
LoadClientDropDown();
}
}

protected void LoadClientDropDown()
{
//load the drop down ddlClients from data
}

protected void btnSave_Click(object sender, System.EventArgs e)
{
int clientValue = Convert.ToInt32(ddlClients.SelectedValue);
}

我可能遗漏了什么?

最佳答案

应用程序是否已配置为在网络场上运行?查看这篇 MSDN 文章:

http://msdn.microsoft.com/en-us/library/ms998288.aspx#paght000007_viewstate

您需要确保 machineKey 在您的应用运行的每台服务器上保持一致。您可以在 web.config 中定义它。我记得以前的雇主没有这样做,但遇到了 View 状态问题。

关于c# - ASP.NET DropDownValue 不会跨 webfarm 中的一台服务器持久保存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1190831/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com