asp.net - 在 asp.net 页面加载中下载弹出窗口不正确
问题描述
我正在尝试根据以下代码打开文件。
我没有使用 server.mappath。因为,访问路径是直接文件服务器路径,它与服务帐户映射。
protected void Page_Load(object sender, EventArgs e)
{
string filePath1 = @"\\RMN\T001\PROC\MATERIALDB\";
Response.Clear();
Response.ClearContent();
Response.ClearHeaders();
Response.Buffer = true;
Response.AddHeader("content-disposition", "attachment; filename=" + "MAT01210821.png");
Response.WriteFile(filePath1);
Response.ContentType = "";
Response.End();
}
我得到以下错误。
文件名、目录名或卷标语法不正确。
我的要求是,当我执行上述代码时,它应该向最终用户询问弹出窗口“您要打开还是保存文件...”?下面的截图供参考。
解决方案
即使缺少实际错误,该行Response.WriteFile(filePath1);
仍在尝试使用文件夹,就好像它是一个文件一样。
为避免这种混淆,文件夹路径应存储在一个名为folder
并用于构造实际路径的变量中。
var folder = @"\\RMN\T001\PROC\MATERIALDB\";
var fileName="MAT01210821.png";
var filePath=Path.Combine(folder, fileName) ;
...
Response.AddHeader("content-disposition", "attachment; filename=" + fileName);
Response.WriteFile(filePath);
推荐阅读
- python - Python Speech_recognition 无法读取 wav 文件
- typescript - 键入所有可能的字符串以使用accessibilityRole?
- sql - 将几个 UNION ALL 组合成一个查询
- android - asynctask android如何从php后端获取json响应
- google-cloud-platform - 获取令牌失败,消息:FIS_AUTH_ERROR
- java - 在 android studio 中创建依赖微调器?根据宠物的类型选择宠物类型,然后选择品种,例如狗,然后选择品种
- python - 虚线模糊了图像的一部分
- data-modeling - 数据仓库设计应该先规划采购模块还是库存
- ios - 在 Swift 中将数据保存到 sqlite3 数据库中
- vb.net - 如何使用少数 subs 来拆分代码过程