重命名fileupload中的文件扩展名时上载有效文件

时间:2016-07-15 12:55:18

标签: c# asp.net file-upload

我在asp.net c#中使用visual studio 2013中的文件上传。我已经进行了验证,只有图片文件必须上传,但当我将文件扩展名 try.jpg 重命名为时尝试.jpg.txt 。它将被上传。我希望只上传有效的类型文件。所以我如何阻止它。

这是我的代码。

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;

                    }
                }

2 个答案:

答案 0 :(得分:1)

如果重命名文件名,请确保它是保存文件。 我已经测试了 try.jpg.txt ,但它显示了该文件的 .txt 扩展名。你可以看到here

答案 1 :(得分:0)

几乎没有可能的选择: 1)

{{1}}

2)Custom c# class to determine file type

希望这有帮助!