HTML代码给一个input标签,然后隐藏。
<div style="display: none">
<input type="file" name="file" id="getAttachmentFile" class="form-control" />
</div>
由于要存入HTML,关闭验证
[ValidateInput(false)]
检查存放文件的目录是否存在,不存在就创建。
if (!Directory.Exists(Server.MapPath("~/Document/Notice/Attachment/")))
{
Directory.CreateDirectory(Server.MapPath("~/Document/Notice/Attachment/"));
}
int intNoticeId = pwNotice.NoticeID;
获取session的文件表
List<FilesVo> sessionFiles = new List<FilesVo>();
if (Session["sessionFiles"]!=null)
{
sessionFiles = Session["sessionFiles"] as List<FilesVo>;
}
有上传的文件,循环获取里面的文件,把文件从临时的文件夹移动到新的文件夹中。
if (sessionFiles!=null&&sessionFiles.Count>0)
{
List<PW_File> listfFiles = new List<PW_File>();
for (int i = 0; i < sessionFiles.Count; i++)
{
PW_File file = new PW_File();
file.NoticeID = intNoticeId;
file.FileTypeID = sessionFiles[i].FileTypeID;
file.Files = sessionFiles[i].Files;
listfFiles.Add(file);
string strAttachmentFileName = sessionFiles[i].FileName;
string strAttachmentOldPath = Server.MapPath("~/Document/Temp/") + strAttachmentFileName;
string strstrAttachmentNewPath = Server.MapPath("~/Document/Notice/Attachment/") + strAttachmentFileName;
try
{
System.IO.File.Move(strAttachmentOldPath, strstrAttachmentNewPath);
}
catch (Exception e)
{
Console.WriteLine(e);
}
}
保存文件
myModels.PW_File.AddRange(listfFiles);
myModels.SaveChanges();
}
注:上述代码来自教学内容!