ASP.NET MVC 文件下载FileContentResult会进入两次,怎么才能让它只进一次?为什么会进两次?
贴代码。
应该是不会进两次的,你检查检查代码,看看是否前台js调了两个载文件的action,或把代码贴出来!
先说明一下,用谷歌浏览器只进入一次,用IE就会进入两次
后台代码:
public FileContentResult Download()
{
Dictionary<string, string> dic = new Dictionary<string, string>();
dic.Add("Name", "姓名");
dic.Add("StudyCode", "学籍号");
//dic.Add("PassWord", "密码");
dic.Add("Sex", "性别");
dic.Add("Birthday", "出生日期");
dic.Add("Department", "所属院系");
dic.Add("Specialty", "所属专业");
dic.Add("tbClass", "班级");
dic.Add("Email", "电子邮箱");
dic.Add("PhoneNo", "手机号码");
dic.Add("AcademicYear", "学年度");
dic.Add("IdentityNo", "身份证号码");
dic.Add("Teacher", "所属老师");
dic.Add("LastPlayTime", "英语最近一次播放时长");
dic.Add("TotalPlayTime", "英语播放总时长");
dic.Add("JapaneseLastPlayTime", "日语最近一次播放时长");
dic.Add("JapaneseTotalPlayTime", "日语播放总时长");
// dic.Add("CreateTime", "创建时间");
return File(SqlHelper.ToExecl(new List<Models.Study>(), dic).ToArray(), "application/vnd.ms-excel", string.Format("导入学生信息格式{0}.xls", DateTime.Now.ToString("yyyyMMddHHmmssfff")));
}
前台代码:
<iframe name='hidden_frame' id='hidden_frame' style='display: none'></iframe>
<form action="/Study/Download" method="post" id="form2" target="hidden_frame">
<div onclick="javascript:document.getElementById('form2').submit()">下载标准格式</div>
</form>
@小徐的博客园: 别放在form里面试试,直接按钮点击下载,不用在form里面提交,直接一个a链接到后台方法下载