在path.getFileName之后更改文件名

时间:2014-05-27 09:18:29

标签: model-view-controller .net

使用此代码上传图片:

[HttpPost]
    public ActionResult Index(FotoModel model)
    {

        if (ModelState.IsValid)
        {
            if (model != null && model.File != null)
            {
                var fileName = Path.GetFileName(model.File.FileName);
                var path = Path.Combine(Server.MapPath("~/Content/Images"), fileName);
                model.File.SaveAs(path);
                return View();
            }
        }

        return View();
    }

工作正常,但是有没有更改文件名的选项?我试着做这样的事情:

fileName = FileMode(fileName, "user");

但有一个例外:“System.IO.FileMode是一个类型但是像变量一样使用”

2 个答案:

答案 0 :(得分:0)

没有 Path.Combine()允许将字符串组合成文件名吗?所以你不能这样做:

var fileName = "user";
var path = Path.Combine(Server.MapPath("~/Content/Images"), fileName);

答案 1 :(得分:0)

在这种情况下,使用以下内容删除扩展名,然后将其重新添加到新文件名中:

string newName = "user";
fileName = newName + fileName.Substring(fileName.LastIndexOf("."));