2016-07-15 82 views
0

我在Visual Studio 2013中使用文件上传在asp.net c#。我有验证只有图像文件必须上传,但当我重命名文件扩展名try.jpgtry.jpg.txt。它会被上传。我希望只有有效的类型文件应该上传。所以我如何防止它。上传有效文件时重新命名文件扩展名在fileupload

这是我的代码。

string ImageExt = Path.GetExtension(fuBlogImageFile.FileName).ToLower(); 
       if (ImageExt == ".jpg" || ImageExt == ".jpeg" || ImageExt == ".bmp" || ImageExt == ".png" || ImageExt == ".gif") 
       { 
        string imgBlog = txtBlogTitle.Text.Trim().Replace(" ", "").Replace("?", "").Replace(".", "").Replace(",", ""); 
        ImageName = CommonClass.commonFuntion.Shorten(imgBlog, 20, true) + ((System.DateTime.Now).ToString()).Replace(":", "").Replace("/", "").Replace(" ", "") + ImageExt; 
        ViewState["BlogImageFile"] = ImageName; 
        string targateFilePath = Server.MapPath("~") + CommonClass.Admin.ImagePath.BlogImageFile + ImageName; 
        csImageResize objImageResize = new csImageResize(); 
        ResutImageSave = objImageResize.ImageWidthHeightDecrisce(fuBlogImageFile.PostedFile.InputStream, 728, 241, 728, 241, targateFilePath, false); 
        if (ResutImageSave.Equals("Image Save Successfully")) 
        { 
         returnstring = ResutImageSave; 
         //divError.Visible = false; 
        } 
        else 
        { 
         returnstring = ResutImageSave; 

        } 
       } 

回答

1

请确保它是保存文件,如果您重命名的文件名.. 我已经测试了try.jpg.txt却是露出我.TXT扩展名的文件。你可以看到here

+1

现在我只想检查该文件是否是实际有效的文件,保存文件是不同的问题。 –