更改上传图片的名称

时间:2012-04-15 12:14:02

标签: c# asp.net-mvc-3

我想要实现的是将上传图像的名称更改为有点独特的字符串。

我创建了一个由数据库动态填充的图库。该库工作正常,但如果上传了同名图像,存储在数据库中的文件将会出现问题!

控制器中用于文件上传的代码:

string AdvertImage = picture1.FileName;
                    advert.AdvertImage = AdvertImage;
                    var image1Path = Path.Combine(Server.MapPath("~/Content/Images"), AdvertImage);
                    picture1.SaveAs(image1Path);

下面的代码是我正在处理的

                    string BackImage = DateTime.Now.ToString("yyyyMMddhhmmssfffffff");
                    caradvert.BackImage = BackImage;
                    var image3Path = Path.Combine(Server.MapPath("~/Content/CarImages"), BackImage);
                    picture3.SaveAs(image3Path);

我设法创建了一个独特的文件名,因为它没有将.jpg附加到图像的末尾。

有关此主题的任何帮助或建议欢迎

1 个答案:

答案 0 :(得分:2)

试试这个:

        //save file in folder
    if (FileUpload1.PostedFile.ContentType.ToLower().StartsWith
            ("image") && FileUpload1.HasFile)
    {
        string savelocation = Server.MapPath("savedImages/");
        string fileExtention = System.IO.Path.GetExtension(FileUpload1.FileName);
        //creating filename to avoid file name conflicts.
        string fileName = Guid.NewGuid().ToString();
        //saving file in savedImage folder.
        string savePath = savelocation + fileName + fileExtention;
        FileUpload1.SaveAs(savePath);
    }
相关问题