将(Asp.Net)会话变量(由uploadify上传)从webmethod传递到同一页面?

发布于 2024-10-12 01:14:55 字数 990 浏览 6 评论 0原文

当我尝试使用会话从通用处理程序(upload.ashx)获取上传的文件名时,没问题。我还可以在同一页面上使用 webmethod,并且 uploadify 效果很好,但 Session["fileName"] 变得为空。我的代码有什么问题吗?我只需要使用通用处理程序来获取文件名吗?

 [WebMethod(EnableSession = true)]      
    public void LoadPicture(HttpContext context)
    {
            try
        {
            HttpPostedFile file = context.Request.Files["Filedata"]; 

            context.Session["fileName"] = file.FileName;

............一些调整大小和保存图像代码............

            context.Response.Write("1");
        }
        catch (Exception ex)
        {
            context.Response.Write("0");
        }
   }

    protected void Button1_Click(object sender, EventArgs e)
    {

        using (_modelService = new ModelService())
        {
            ModelEntity _models = new ModelEntity();
                 ......some codes....
            _models.modelphoto = Session["fileName"].ToString();
            _modelService.ModelAdd(_models);
        }
    }

When i try to get uploaded filename from generic handler (upload.ashx) using session its ok, no problem. I can also use webmethod on samepage and uploadify works great, but Session["fileName"] is getting null. Is there anything wrong on my code? Do i only need to use generic handler to get filename?

 [WebMethod(EnableSession = true)]      
    public void LoadPicture(HttpContext context)
    {
            try
        {
            HttpPostedFile file = context.Request.Files["Filedata"]; 

            context.Session["fileName"] = file.FileName;

....................Some resize and save image codes.........

            context.Response.Write("1");
        }
        catch (Exception ex)
        {
            context.Response.Write("0");
        }
   }

    protected void Button1_Click(object sender, EventArgs e)
    {

        using (_modelService = new ModelService())
        {
            ModelEntity _models = new ModelEntity();
                 ......some codes....
            _models.modelphoto = Session["fileName"].ToString();
            _modelService.ModelAdd(_models);
        }
    }

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

落墨 2024-10-19 01:14:55

上传使用 Flash。 Flash 不发送 cookie。在 ASP.NET 中,会话是通过 cookie 进行跟踪的。所以,抱歉,没有与 uploadify 进行会话。

Uploadify uses Flash. Flash doesn't send cookies. In ASP.NET sessions are tracked by cookies. So, no session with uploadify, sorry.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文