Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.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#_Asp.net_Visual Studio_Asyncfileupload - Fatal编程技术网

C# 会话错误:对象未设置为实例

C# 会话错误:对象未设置为实例,c#,asp.net,visual-studio,asyncfileupload,C#,Asp.net,Visual Studio,Asyncfileupload,在我的网页中,我无法在远程服务器中获取post上的会话变量 问题是 如果页面不是IsPostback,那么我可以获取会话变量 但如果页面回发,则会出现错误 当我使用asynchfile上载时也会出现同样的错误。我使用asynchfileupload上传图像并将其存储到会话变量。然后单击按钮,我将数据保存到目录中 当我将任何文件上载到服务器时,都会出现此问题。我正在使用asynchfileupload控件上载图像,但这种情况并不经常发生 这是我的密码 protected void AsynImag

在我的网页中,我无法在远程服务器中获取post上的会话变量

问题是

如果页面不是IsPostback,那么我可以获取会话变量

但如果页面回发,则会出现错误

当我使用asynchfile上载时也会出现同样的错误。我使用asynchfileupload上传图像并将其存储到会话变量。然后单击按钮,我将数据保存到目录中

当我将任何文件上载到服务器时,都会出现此问题。我正在使用asynchfileupload控件上载图像,但这种情况并不经常发生

这是我的密码

protected void AsynImageLoader_UploadedComplete(object sender, AjaxControlToolkit.AsyncFileUploadEventArgs e)
{
    if (AsynImageLoader.PostedFile != null)
    {
        string extension = System.IO.Path.GetExtension(AsynImageLoader.PostedFile.FileName);

        if (extension == ".jpg" || extension == ".gif" || extension == ".jpeg" || extension == ".png")
        {
            HttpPostedFile file = AsynImageLoader.PostedFile;
            Session["TempImage"] = ReadFile(file);
        }
    }
}
点击按钮

   var storedImage = Session["TempImage"] as byte[];
   String Strthumbpath = Server.MapPath("content\\thumbnail\\");
   if (storedImage != null)
   {
       System.Drawing.Image image = GetImage(storedImage);
       if (image != null)
       {
       image.Save(Strthumbpath + strFileName);
       }

       }
将值插入数据库

在谷歌搜索之后,我读到当任何文件添加到任何子目录或编辑webconfig时,都会导致应用程序重新启动

如果是这样,我该如何解决这个问题


提前感谢。

您发回邮件时,名为“User\u id”的会话变量似乎已被删除。您会看到“对象未设置为对象的实例”,因为您试图对空对象执行“ToString()”方法,这是不允许的


希望这能有所帮助。

当您发回时,名为“User\u id”的会话变量似乎被删除。您会看到“对象未设置为对象的实例”,因为您试图对空对象执行“ToString()”方法,这是不允许的


希望这有帮助。

请提供代码,否则我们无法猜测问题。 不过,在使用会话变量之前,您始终可以对其执行空检查

if(Session["User_id"]) != null;

请提供代码,否则我们无法猜测问题。 不过,在使用会话变量之前,您始终可以对其执行空检查

if(Session["User_id"]) != null;

您必须检查session是否为null或空,如下所示:

 if (Session["User_id"] == null || Session["User_id"].ToString() == string.Empty)
 {
    Response.write(Session["User_id"].ToString());
 }
 else
 {
   // your code
 }

您必须检查session是否为null或空,如下所示:

 if (Session["User_id"] == null || Session["User_id"].ToString() == string.Empty)
 {
    Response.write(Session["User_id"].ToString());
 }
 else
 {
   // your code
 }

检查远程计算机上的
web.config
文件,确保元素配置正确。您可以在远程服务器上将
模式
属性设置为
关闭


正如其他人指出的那样,在访问会话中存储的对象的属性之前,您可以编写更具防御性的代码检查
null

检查远程计算机上的
web.config
文件,确保元素配置正确。您可以在远程服务器上将
模式
属性设置为
关闭

正如其他人所指出的,在访问会话中存储的对象的属性之前,您可以编写更具防御性的代码检查
null

第一次检查会话

if (Session["User_id"] == null)
{
//Put code here

}
else
{
     Response.Write(Session["User_id"]);

     // or you can write as below

     Response.Write(Convert.ToString(Session["User_id"]));
}
切勿使用
.ToString()
方法,您应该使用
转换.ToString
,这也是句柄空值。

第一次检查会话

if (Session["User_id"] == null)
{
//Put code here

}
else
{
     Response.Write(Session["User_id"]);

     // or you can write as below

     Response.Write(Convert.ToString(Session["User_id"]));
}

永远不要使用
.ToString()
方法,您应该使用
转换.ToString
,这也是句柄空值。

按钮单击事件发生在页面加载事件之后。。。这可能就是它未设置的原因。;-)

按钮单击事件发生在页面加载事件之后,。。。这可能就是它未设置的原因。;-)

尝试将其作为隐藏表单值而不是会话传递-运气好吗?尝试将其作为隐藏表单值而不是会话传递-运气好吗?在我的webconfig文件中,会话是给定的,您是否可以检查在不进行回发时是否可以在页面加载时创建cookie,然后在页面回发时尝试读取cookie值?我认为存储和检索ASP.NET使用的会话cookie可能会有问题。URL中的主机名是否有可能包含下划线字符(“uU”)?在我的webconfig文件中,会给出会话,您可以检查在不回发时是否可以在页面加载时创建cookie,然后在回发页面时尝试读取cookie值吗?我认为存储和检索ASP.NET使用的会话cookie可能会有问题。URL中的主机名是否包含下划线字符(“”)有可能吗?是的,你是对的。我不明白为什么回发和页面刷新时会话变量user_id会变为null。但是在poage加载上,如果不是ispostback,那么我会得到会话值。是的,你是对的。我不明白为什么回发和页面刷新时会话变量user_id会变为null。但如果不是,在poage加载上ispostback然后我得到会话值。我已经用代码更新了我的问题。你可以检查吗。提前谢谢。我已经用代码更新了我的问题。你可以检查吗。提前谢谢。我的疑问是为什么会话变量在页面回发和页面刷新时变为null。我的疑问是为什么会话变量在页面回发和刷新时变为null页面刷新。