使用autoPostBack = true 创建的两个 radiobuttonlist(semesterList和sem1course)。
当我点击其中一个semesterList的项目时,相应的sem1course项目变为可见。
现在
protected void UploadComplete(Object sender, AjaxControlToolkit.AjaxFileUploadEventArgs e)
{
string sem = semesterList.SelectedValue;
string course = sem1course.SelectedValue;
string path = Server.MapPath("~/MCA/" + sem+ "/" +course +"/")+e.FileName;
AjaxFileUpload1.SaveAs(path);
}
字符串sem和课程没有获得所选的值,这就是为什么所有文件都被上传到〜/ MCA /文件夹而不是进入相应的文件夹..
上传的文件应该转到“MCA \ Sem1 \ MCA101 \” [我设计了目录结构,但文件已上传到MCA文件夹] ..
答案 0 :(得分:0)
调用AjaxFileUpload OnUploadComplete事件时,问题为Request.Form["__VIEWSTATE"] = null
。
修复此问题(C#代码):
在页面加载时在会话中设置RadioButtonList选定值。
protected void Page_Load(object sender, EventArgs e)
{
if (Request.Form["__VIEWSTATE"] != null)
Session["Path"] = "//" + semesterList.SelectedValue + "//" + sem1course.SelectedValue + "//";
}
使用会话值创建文件路径:
protected void upload(Object sender, AjaxControlToolkit.AjaxFileUploadEventArgs e)
{
string path = string.Empty;
if (Session["Path"] != null)
path = Server.MapPath("~//MCA" + (string)Session["Path"]) + e.FileName;
}