如何在处理程序中添加会话值并在Jquery中获取会话值

如何在处理程序中添加会话值并在Jquery中获取会话值,jquery,asp.net,c#-4.0,httphandler,Jquery,Asp.net,C# 4.0,Httphandler,我正在使用下面的处理程序来实现文件上传功能。我正在一个接一个地上传文件。 我想在我的列表中添加所有文件&然后想将这个列表对象传递到jquery中。请让我知道,我们如何在会话中添加附件列表并将其传递到jquery public class FUploadHandler : IHttpHandler { List<AttachedFiles> test = new List<AttachedFiles>(); public void ProcessReque

我正在使用下面的处理程序来实现文件上传功能。我正在一个接一个地上传文件。 我想在我的
列表中添加所有文件
&然后想将这个列表对象传递到jquery中。请让我知道,我们如何在会话中添加附件列表并将其传递到jquery

public class FUploadHandler : IHttpHandler
{
    List<AttachedFiles> test = new List<AttachedFiles>();

    public void ProcessRequest(HttpContext context)
    {        
        var headers = context.Request.Headers;
        string[] files;
        string fileName = string.Empty;

        var file = context.Request.Files[i];
        if (HttpContext.Current.Request.Browser.Browser.ToUpper() == "IE")
        {
            files = file.FileName.Split(new char[] { '\\' });
            fileName = files[files.Length - 1];
        }
        else
        {
            fileName = file.FileName;
        }

        if (file.ContentLength >= 0)
        {
            file.SaveAs(@"C:\temp\" + fileName);
            string fullName = Path.GetFileName(file.FileName);
            test.Add(new AttachedFiles
                {
                    ShowFName = fullName,
                    FSize = file.ContentLength
                });
        }

        JavaScriptSerializer js = new JavaScriptSerializer();
        var jsonObj = js.Serialize(test);                
    }
}

class AttachedFiles
{
     string _FileName;
     int _fileSize;

     public string ShowFName
     {
         get { return _FileName; }
         set { _FileName = value; }
     }

     public int FSize
     {
         get { return _fileSize; }
         set { _fileSize = value; }
     }
}
公共类FUploadHandler:IHttpHandler
{
列表测试=新列表();
公共void ProcessRequest(HttpContext上下文)
{        
var headers=context.Request.headers;
字符串[]文件;
字符串文件名=string.Empty;
var file=context.Request.Files[i];
if(HttpContext.Current.Request.Browser.Browser.ToUpper()=“IE”)
{
files=file.FileName.Split(新字符[]{\\});
fileName=files[files.Length-1];
}
其他的
{
fileName=file.fileName;
}
如果(file.ContentLength>=0)
{
另存为(@“C:\temp\”+文件名);
字符串fullName=Path.GetFileName(file.FileName);
测试。添加(新附件文件
{
ShowFName=fullName,
FSize=file.ContentLength
});
}
JavaScriptSerializer js=新的JavaScriptSerializer();
var jsonObj=js.Serialize(test);
}
}
类附件文件
{
字符串_文件名;
int_文件大小;
公共字符串ShowFName
{
获取{return\u FileName;}
设置{u FileName=value;}
}
公共int FSize
{
获取{return\u fileSize;}
设置{u fileSize=value;}
}
}

< /代码> 如果需要将对象从服务器端传递到客户端,则必须考虑使用页面方法,该方法允许您从JQueRejax(客户端)调用一个C端(服务器端函数)。然后,您可以将对象返回到jquery函数,并在jquery中使用该对象。

您可以对方法进行AJAX调用并返回它。