问题

编程以来今本没有使用input[type=file]这个控件过,今天突然使用尽然报错了,在本地chrome,firefox等其他的浏览器都是好的,唯独ie报错了。在服务器的时候,尽然chrome也是报错的。

问题原因

出现这个错误的主要原因是,在本地上传图片的时候HttpPostedFileBase对象里面保存的FileName仅仅是文件的名称而已

而部署服务器上的时候上传FileName却是你本地上传的物理路径,也就是本地完整的路劲,如下图

解决问题

所以导致我们在执行如下代码的时候会报错

                fileName = imgLogo.FileName;

                string type = fileName.Substring(fileName.LastIndexOf(".") + ).ToLower();
if (!ValidateImg(type))
{
ErrorModel errorModel = new ErrorModel("imgLogo", "只能上传图片文件!");
ViewBag.errorModel = errorModel;
return View(config);
}
//全路劲,导致这里的server.mappath得到的服务器路劲其实错误了,所以下面的saveas会直接报错
var path = Server.MapPath("~/images/" + fileName); imgLogo.SaveAs(path);

既然知道原因了,那么解决起来也就很简单了,处理一下fileName就好了,代码如下

         //只需要在这里截取出文件名称就好了
fileName = imgLogo.FileName.Substring(imgLogo.FileName.LastIndexOf("\\") + 1); ; string type = fileName.Substring(fileName.LastIndexOf(".") + ).ToLower();
if (!ValidateImg(type))
{
ErrorModel errorModel = new ErrorModel("imgLogo", "只能上传图片文件!");
ViewBag.errorModel = errorModel;
return View(config);
}
//全路劲,导致这里的server.mappath得到的服务器路劲其实错误了,所以下面的saveas会直接
var path = Server.MapPath("~/images/" + fileName); imgLogo.SaveAs(path);

The given path's format is not supported.的更多相关文章

  1. IE报错:The given path's format is not supported

    在使用FileUpload控件进行上传EXCEL文件时,本地调试上传无问题,但是发布之后报地址无效错误 一.出现这个错误的主要原因是,在本地上传图片的时候HttpPostedFileBase对象里面保 ...

  2. This file's format is not supported or you don't specify a correct format. 解决办法

    string path = @"c:\请假统计表.xlsx"; Workbook workBook = new Workbook(); workBook.Open(path); A ...

  3. RSA key format is not supported

    对接支付宝时,提示RSA错误 : 请仔细检查 : 创建支付对象时,关键字参数的名字 如果公私钥是以拼接路径的方式传递给AliPay,正确的关键字参数的名字应该如下 :

  4. os.getcwd()、sys.path[0]、sys.argv[0]和__file__的区别,终于弄清楚了

    os.getcwd().sys.path[0].sys.argv[0]和__file__的区别 要分清这几个的区别与使用条件,实际测试一下是最准确的. 设计测试方法: 一个主模块用来运行,一个子模块用 ...

  5. String.format和MessageFormat.format的对比用法

    1.MessageFormat.format import java.text.MessageFormat; /** * Created by SYJ on 2017/9/13. */ public ...

  6. Hadoop官方文档翻译——MapReduce Tutorial

    MapReduce Tutorial(个人指导) Purpose(目的) Prerequisites(必备条件) Overview(综述) Inputs and Outputs(输入输出) MapRe ...

  7. 转:SDL2源代码分析

    1:初始化(SDL_Init()) SDL简介 有关SDL的简介在<最简单的视音频播放示例7:SDL2播放RGB/YUV>以及<最简单的视音频播放示例9:SDL2播放PCM>中 ...

  8. OpenStack Keystone安装部署流程

    之前介绍了OpenStack Swift的安装部署,采用的都是tempauth认证模式,今天就来介绍一个新的组件,名为Keystone. 1. 简介 本文将详细描述Keystone的安装部署流程,并给 ...

  9. 《OD学hadoop》第二周0703

    hdfs可视化界面: http://beifeng-hadoop-01:50070/dfshealth.html#tab-overview yarn可视化界面: http://beifeng-hado ...

随机推荐

  1. solr学习之添加文档

    一.开篇语 其实Solr就是一个你可以通过他来查询文档的东西,他整个都是基于Document的,那么这些Document从何而来列?  当然是我们给他,而这些来源就包括了:数据库文件,XML,Json ...

  2. [Java] 字符流 Writer,输出字符数据PrintWriter

    package test.stream; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.Fi ...

  3. JAVA错误:Cannot refer to a non-final variable * inside an inner class defined in a different method

    在使用Java局部内部类或者内部类时,若该类调用了所在方法的局部变量,则该局部变量必须使用final关键字来修饰,否则将会出现编译错误“Cannot refer to a non-final vari ...

  4. [模板总结] Java的一些模板

    快速排序(数组a从小到大,参数1是待排序的数组,参数2是起始下标,参数3是终止下标): static void sort(int [] a, int l,int r){ int m = l+r> ...

  5. Python第九章模块和包(2)

    1.如果文件下没有__init__.py文件,程序将不会认为这是一个Python的包. 2.如果要使用from 包  import  *  则需要 这样做. 是模块中包含 方法 的文件没有包含类: # ...

  6. POJ3352 Road Construction (双连通分量)

    Road Construction Time Limit:2000MS    Memory Limit:65536KB    64bit IO Format:%I64d & %I64u Sub ...

  7. [译]使用AES 256以达到SSL/TLS安全最大化

    原文链接:https://luxsci.com/blog/256-bit-aes-encryption-for-ssl-and-tls-maximal-security.html 原文发表时间:201 ...

  8. 怎样去掉FireFox的导入向导

    用robotframework的时候,用ride去打开firefox,但是每次都会出现导入向导,影响了后续的操作,怎样才能去掉呢? 网上查到的解决方案是:到firefox的profiles.ini所在 ...

  9. 辅助的写与数据库交互的XML文件的类

    现在企业级WEB应用中与数据库交互的XML文件都是通过插件自动生成的,不过有些时候修改比较老的项目的时候也是需要手动的来做这一动作的!如下代码就是一个实现上述的功能的辅助类,在此记录一下以备后用! p ...

  10. ubuntu解压zip文件乱码问题

    我的zip文件里的内容是有中文名,也有密码,在网上找到几种解决办法只有一种可以,所以在这里记录一下: 首先是安装7zip来解压,7zip的解决办法在这里,但是无法解决我的问题,仍然有乱码问题 最后是在 ...