从另一种方法检索到的一种方法中设置的属性返回null

webDC

嗨,我试图在不同的范围内引用变量,即在不同的方法中。我正在通过使用getter和setter来做到这一点,但在另一种方法中的变量为null。我在这里看到了一个相关的问题,但这也无法在C#中引用另一种方法的变量这是我的代码:

private string FileName { get; set; }

protected void btnUpload_Click(object sender, EventArgs e)
{
    if (FileUpload1.HasFile)
    {                
        FileName = FileUpload1.FileName.ToString();        
        string extension = Path.GetExtension(FileName);
        FileName = FileName.Replace(extension, "");
        if (extension.ToLower()==".pdf")
        {
            FileUpload1.SaveAs(Server.MapPath("~/Uploads/" + FileName));
        }
    }
}

protected void btnSave_Click(object sender, EventArgs e)
{            
    string saveLocation = Server.MapPath("~/Downloads/" + FileName + ".doc");
    Response.Clear();            
    Response.ContentType = "application/octet-stream";
    Response.AppendHeader("content-disposition", "attachment;fileName" + Filename);
    Response.WriteFile(saveLocation);
    Response.End();
}

当我运行这个的FileName时候NULL虽然它是一个属性和一个类变量。另一个甚至基本上是在上下载文件的逻辑saveLocation我可能会缺少什么?

定义

在分别向您的应用程序发出请求时,将分别调用每种方法,每单击一次按钮便调用一个。每个请求都会创建您的页面类的新实例,这意味着将重新初始化该属性(在这种情况下,默认值为string,即null)。

为了保持价值不变,您需要将其放置在可以在请求之间持久存在但对用户而言不同的地方。我们在Session对象中只有这样的位置

protected void btnUpload_Click(object sender, EventArgs e)
{
    if (FileUpload1.HasFile)
    {                
        string fileName = FileUpload1.FileName.ToString();        
        string extension = Path.GetExtension(fileName);
        fileName = fileName.Replace(extension, "");
        if (extension.ToLower()==".pdf")
        {
            FileUpload1.SaveAs(Server.MapPath("~/Uploads/" + fileName));
        }
        Session["UploadedFileName"] = fileName;
    }
}

protected void btnSave_Click(object sender, EventArgs e)
{
    string fileName = Session["UploadedFileName"];
    if (string.IsNullOrWhiteSpace(fileName))
    {
        // you may want to throw and exception or display an error message here...
        // At minimum, don't try to send the file
        return;
    }

    string saveLocation = Server.MapPath("~/Downloads/" + fileName + ".doc");
    Response.Clear();            
    Response.ContentType = "application/octet-stream";
    Response.AppendHeader("content-disposition", "attachment;fileName" + Filename);
    Response.WriteFile(saveLocation);
    Response.End();
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

图形G的另一种方法

来自分类Dev

调用活动的另一种方法。

来自分类Dev

如何从另一种方法使用数组?

来自分类Dev

在Eclipse中从一种方法跳转到另一种方法的快捷方式

来自分类Dev

另一种方法是选择案例

来自分类Dev

如何在Java(android)中的另一种方法中使用一种方法的变量

来自分类Dev

找出一种方法是否可以调用另一种方法

来自分类Dev

MySQL使用GROUP BY的另一种方法

来自分类Dev

检索Firebase数据并将其返回的最佳方法,或另一种方法

来自分类Dev

将KDoc文档从一种方法复制到另一种方法

来自分类Dev

将块从一种方法传递到另一种方法

来自分类Dev

click()的另一种方法

来自分类Dev

编写此查询的另一种方法

来自分类Dev

terraform计划是一种方法,但不是另一种方法?

来自分类Dev

无法捕获从一种方法到另一种方法的返回值

来自分类Dev

将方法从一种方法传递到另一种方法时的逻辑

来自分类Dev

无法将一种方法调用到另一种方法

来自分类Dev

使用方法返回值作为参数与在一种方法中设置类变量并将其用作另一种方法的参数

来自分类Dev

设置OnScrollListener的另一种方法

来自分类Dev

调用get方法的另一种方法

来自分类Dev

将值从一种方法返回到另一种方法

来自分类Dev

使用 List 从一种方法到另一种方法

来自分类Dev

在 Python 中从另一种方法调用一种方法

来自分类Dev

无法将某些字段从一种方法传递到另一种方法

来自分类Dev

从承诺中返回数据并在另一种方法中获取它

来自分类Dev

如何将一种方法中的变量用于另一种方法?

来自分类Dev

如何在java中将Int从一种方法返回到另一种方法

来自分类Dev

使用一种方法的结果以另一种方法计算价格

来自分类Dev

将一种方法的 var 用于另一种方法

Related 相关文章

  1. 1

    图形G的另一种方法

  2. 2

    调用活动的另一种方法。

  3. 3

    如何从另一种方法使用数组?

  4. 4

    在Eclipse中从一种方法跳转到另一种方法的快捷方式

  5. 5

    另一种方法是选择案例

  6. 6

    如何在Java(android)中的另一种方法中使用一种方法的变量

  7. 7

    找出一种方法是否可以调用另一种方法

  8. 8

    MySQL使用GROUP BY的另一种方法

  9. 9

    检索Firebase数据并将其返回的最佳方法,或另一种方法

  10. 10

    将KDoc文档从一种方法复制到另一种方法

  11. 11

    将块从一种方法传递到另一种方法

  12. 12

    click()的另一种方法

  13. 13

    编写此查询的另一种方法

  14. 14

    terraform计划是一种方法,但不是另一种方法?

  15. 15

    无法捕获从一种方法到另一种方法的返回值

  16. 16

    将方法从一种方法传递到另一种方法时的逻辑

  17. 17

    无法将一种方法调用到另一种方法

  18. 18

    使用方法返回值作为参数与在一种方法中设置类变量并将其用作另一种方法的参数

  19. 19

    设置OnScrollListener的另一种方法

  20. 20

    调用get方法的另一种方法

  21. 21

    将值从一种方法返回到另一种方法

  22. 22

    使用 List 从一种方法到另一种方法

  23. 23

    在 Python 中从另一种方法调用一种方法

  24. 24

    无法将某些字段从一种方法传递到另一种方法

  25. 25

    从承诺中返回数据并在另一种方法中获取它

  26. 26

    如何将一种方法中的变量用于另一种方法?

  27. 27

    如何在java中将Int从一种方法返回到另一种方法

  28. 28

    使用一种方法的结果以另一种方法计算价格

  29. 29

    将一种方法的 var 用于另一种方法

热门标签

归档