Tag: 文件上传

增加Azure Api应用程序中的最大请求长度

我创建了一个Azure Api应用程序,我将用它来上传文件。 这些文件将> 4mb,因此需要增加最大请求长度。 我在Web.config中添加了以下内容: 我还补充说: 然而,我仍然得到Maximum request length exceeded.的exceptionMaximum request length exceeded. 。 我错过了什么吗? 我还能尝试别的吗? 谢谢!

使用RegularExpressionValidator进行文件上传不适用于仅使用Firefox的IE

我有一个带有RegularExpressionValidator的FileUpload,其中包含以下validation表达式: ^(([a-zA-Z]:)|(\\{2}\w+)\$?)(\\(\w[\w].*))+(.gif|.jpg|.JPG|.JPEG|.GIF|.jpeg|.png|.bmp|.3dm|.3dmf|.ai|.drw|.dxf|.esp|.mng|.png|.ps|.psp|.svg|.tiff)$ 这样我确保用户只上传图像。 但由于某种原因,当我使用Firefox时,它不起作用。 为什么这样,我该如何解决这个问题呢?

不要覆盖通过FileUpload控件上传的文件

使用以下代码: protected void Button1_Click(object sender, EventArgs e) { if (FileUpload1.HasFile) { string fileExt = System.IO.Path.GetExtension(FileUpload1.FileName); if (fileExt == “.jpg” || fileExt == “.jpeg” || fileExt == “.gif” || fileExt == “.png”) { try { FileUpload1.SaveAs(Server.MapPath(“../uploads/originals/” + FileUpload1.FileName)); Label1.Text = “File name: ” + FileUpload1.PostedFile.FileName + “” + FileUpload1.PostedFile.ContentLength + ” kb” + “Content type: ” […]

PostBack后FileUpload为空

关于回发后为空的ASP.NET fileuploader,我遇到了问题。 我有一个文件上传控件,一个文本框控件和一个按钮控件。 当我单击按钮时,它会检查文本框是否已填充,是否执行操作,如果不是则显示错误消息并保留在页面上。 但是,当我按下按钮并且文本框为空时,按钮回发并且fileuploader为空,用户必须再次选择该文件。 所以:用户选择文件>文件位于fileuploader>用户按下按钮>弹出错误信息>文件上传器在回发后丢失文件。 当用户选择文件但尚未点击按钮时(koala.jpg) 按下按钮时,文件消失(未选择文件) 如何在回发后将文件保留在fileuploader中,或者如果文本框为空则告诉按钮不要回发? 编辑: 请注意,我简化了问题,并且第一篇文章的内容只是为了使我的问题更加清晰。 页面加载: protected void Page_Load(object sender, EventArgs e) { //First check if User is logged in if (Session[“User”] == null) { Response.Redirect(GetRouteUrl(“Login”, null)); } TicketsBLL objTicketsBll = new TicketsBLL(); var cat = objTicketsBll.getAllCategories(); ddlCategory.DataTextField = “name”; ddlCategory.DataValueField = “id”; ddlCategory.DataSource = cat; ddlCategory.DataBind(); } 按钮单击: […]

检查上传文件的类型

如何在ASP.NET C#网页中检查使用FileUploader控件上载的文件的文件类型? 我尝试检查文件扩展名,但是当JPEG图像(例如Leonardo.jpg )重命名为具有PDF扩展名(例如Leonardo.pdf )时,它显然会失败。 我试过了 FileUpload1.PostedFile.ContentType.ToLower().Equals(“application/pdf”) 但这失败了,因为上面的代码与第一个代码的行为方式相同。 有没有其他方法来检查实际的文件类型,而不仅仅是扩展名? 我看了ASP.NET如何检查文件类型的类型而不管扩展名 。 编辑:我尝试从stackoverflow中的一个post下面的代码。 但这不起作用。 对此有任何想法。 /// /// This class allows access to the internal MimeMapping-Class in System.Web /// class MimeMappingWrapper { static MethodInfo getMimeMappingMethod; static MimeMappingWrapper() { // dirty trick – Assembly.LoadWIthPartialName has been deprecated Assembly ass = Assembly.LoadWithPartialName(“System.Web”); Type t = ass.GetType(“System.Web.MimeMapping”); getMimeMappingMethod t.GetMethod(“GetMimeMapping”, BindingFlags.Static […]

使用FileUpload过滤文件扩展名

我正在编写一个asp.net Web应用程序,它涉及使用FileUpload控件。 现在,这个特定的FileUpload控件只需要.zip或.gz文件类型。 如果上载的文件类型不正确,则会向用户显示错误消息。 此function已实施。 我想要做的是过滤用户点击“浏览”时看到的可见文件类型。 您可能已经看到类似以下文件打开对话框。 我圈出了代表文件扩展名filter的区域。 这是一个非常常见的function,我希望它可以内置到当前的FileUpload控件中,但经过一些在线搜索后,我发现一些post说它无法完成。 这些post来自2009年,超过两年前。 现在,我的问题是:当前的Asp.Net 4.0是否支持此function?如果没有,你知道任何简单的解决方案来获得我想要的function吗? 我想再次指出,我能够validation用户是否选择了支持的文件类型。 我正在寻找的是一个整容改变,它将在打开文件对话框中过滤掉不需要的文件类型。

在上传文件控件中恢复

我确实阅读了以下post: 在C#中暂停/恢复上传 使用HTTP恢复上传? 但没有一个完美的解决方案来解决我的问题。 在上面的post中,其中一个答案说”client and server needs to identify the file some how i suggest the use of a Guid so the server knows what file to append the extra data too.” 请求您访问aobve的第一个链接并找到答案。 这个答案都是关于流媒体的。 有人可以提供链接使用我可以构建这样的代码吗? 在这些post中,其中一个答案说”you can send several small file pieces and rebuild them server side” ……怎么样? 我不能使用像checksum等的东西来检测上传了多少部分以及需要多少部分并将其附加到该文件中? 如果有,怎么样?

Request.Files相同的文件上传asp.net mvc

foreach (string fileName in Request.Files) { HttpPostedFileBase file = Request.Files[fileName]; //Save file content goes here fName = file.FileName; if (file != null && file.ContentLength > 0) { subPath = ConfigurationManager.AppSettings[“SubPath”].ToString() + “/” + currentUserId; bool isExists = System.IO.Directory.Exists(Server.MapPath(subPath)); if (!isExists) System.IO.Directory.CreateDirectory(Server.MapPath(subPath)); string path = System.IO.Path.Combine(Server.MapPath(subPath), System.IO.Path.GetFileName(file.FileName)); file.SaveAs(path); } } 如果我上传多个文件,我会得到相同的文件n次。 我正在使用此控件: https : //github.com/kartik-v/bootstrap-fileinput 我的cs.html […]

在gridview中上传文件

我需要将一个带有文件上传控件的列添加到我的网格视图中,以便我可以针对任何特定行上传文件。 是否可以这样做,理想情况下我需要能够在不将gridview置于其编辑状态的情况下执行此操作。

文件上传安全关注

我有一个公开的网络表单,具有文件上传function。 现在,文件要么保存在Web服务器上,要么作为附件发送到电子邮件中。 我们对大小有限制,即15MB和上传文件的扩展名。 我们的SMTP服务器位于同一Web服务器上。 我担心安全问题,因为任何人都可以上传恶意文件并对我们的生产Web服务器产生影响。 公众可以使用这种文件上传控制有什么风险? 无论如何,有人可以通过上传恶意文件在Web服务器上执行恶意脚本。 我做了一些研究,发现了以下几点 如果我在电子邮件中将文件作为附件发送,则此文件将临时存储在Temporary ASP .Net文件夹中,一旦发送电子邮件,该文件将被删除。 您可以在将文件保存到文件系统之前重命名该文件。 您可以将文件保存在您的网站的不同位置 您可以进行某种实时病毒检查。 我不知道你怎么能这样做。 我正在阅读一些命令行病毒扫描。 但不确定我是否真的需要它。 这些只是几点,但我想知道文件上传中的任何盲点。