Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 页面加载时会话值丢失_C#_Web Applications - Fatal编程技术网

C# 页面加载时会话值丢失

C# 页面加载时会话值丢失,c#,web-applications,C#,Web Applications,我已将一个web应用程序项目从2003年转换为2005年。2003年一切正常,但2005年转换的web应用程序项目存在一些问题,问题在于会话值,最初会话值工作正常(第一次),但如果第二次加载页面,会话值将变为空 在第一页设置会话值,在第二页接收会话值,然后单击按钮,页面将重新加载,此时会话值为空 请给我一些答案或链接以供参考 检查应用程序是否没有改变文件夹结构中的任何内容,例如创建新文件或文件夹。这通常会导致重置应用程序,从而导致会话信息丢失。特别是一些特殊的文件夹和文件,如App\u code

我已将一个web应用程序项目从2003年转换为2005年。2003年一切正常,但2005年转换的web应用程序项目存在一些问题,问题在于会话值,最初会话值工作正常(第一次),但如果第二次加载页面,会话值将变为空

在第一页设置会话值,在第二页接收会话值,然后单击按钮,页面将重新加载,此时会话值为空


请给我一些答案或链接以供参考

检查应用程序是否没有改变文件夹结构中的任何内容,例如创建新文件或文件夹。这通常会导致重置应用程序,从而导致会话信息丢失。特别是一些特殊的文件夹和文件,如
App\u code
文件夹和
Web.Config
,在修改时会立即重置应用程序

如果不是这样,那么可能是代码逻辑问题。尝试使用属性将会话变量的读/写重构为:

private string MySessionVar {
    get { return (string)Session["MySessionVar"]; }
    set { Session["MySessionVar"] = value; }
}
然后将断点添加到getter和setter,并运行代码检查是什么导致会话变量被覆盖。如果您使用usercontrols,请务必检查它们


此外,如果变量只用于当前页,则可以考虑使用<代码> VIEWSTATOR> <代码>变量。

我需要它,请给我一些理想的发布一些代码?也许您正在覆盖代码中的值?