我在网站上有一个文件上传网页表单,它只需要接受某些格式(或MIME类型)…
以下代码完美地工作,除了,它不会将.DOCX文件上传到服务器!这是唯一不起作用的文件类型…我已经仔细检查了每一行代码,甚至已经进入IIS管理器以确保继承了.DOCX MIME类型,它们是……
有没有人知道为什么.DOCX文件不会像其他文件类型一样上传到服务器?
代码片段:
string savePath = "D:\\HIDDEN PATH HERE"; string fileMsg; // Before attempting to perform operations // on the file,verify that the FileUpload // control contains a file. if (FileUpload1.HasFile) { // Check to see that the content type is proper and allowed. // DOC: application/doc,appl/text,application/vnd.msword,application/vnd.ms-word,application/winword,application/word,application/x-msw6,application/x-msword if ( FileUpload1.PostedFile.ContentType == "text/rtf" || FileUpload1.PostedFile.ContentType == "application/doc" || FileUpload1.PostedFile.ContentType == "appl/text" || FileUpload1.PostedFile.ContentType == "application/vnd.msword" || FileUpload1.PostedFile.ContentType == "application/vnd.ms-word" || FileUpload1.PostedFile.ContentType == "application/winword" || FileUpload1.PostedFile.ContentType == "application/word" || FileUpload1.PostedFile.ContentType == "application/msword" || FileUpload1.PostedFile.ContentType == "application/x-msw6" || FileUpload1.PostedFile.ContentType == "application/x-msword" || FileUpload1.PostedFile.ContentType == "application/pdf" || FileUpload1.PostedFile.ContentType == "application/x-pdf" || FileUpload1.PostedFile.ContentType == "application/vnd.openxmlformats-officedocument.wordprocessingml.document" || FileUpload1.PostedFile.ContentType == "application/vnd.openxmlformats-officedocument.wordprocessingml.template" ) { // Get the name of the file to upload. String fileName = FileUpload1.FileName; // Append the name of the file to upload to the path. savePath += strNow + fileName; // Call the SaveAs method to save the // uploaded file to the specified path. // This example does not perform all // the necessary error checking. // If a file with the same name // already exists in the specified path,// the uploaded file overwrites it. FileUpload1.SaveAs(savePath); // Notify the user of the name of the file // was saved under. //fileMsg = "Your file was saved as " + fileName; fileMsg = ""; } else { fileMsg = "Your file was not an accepted format. Please use PDF,RTF or DOC formats."; }
解决方法
见
this answer,它指向
this page.
DOCX Mime类型:
application/vnd.openxmlformats-officedocument.wordprocessingml.document
编辑:
对不起,没有在列表中看到它.如果您想允许DOCX,为什么不检查“.docx”作为扩展名.
|| FileUpload1.PostedFile.FileName.ToLower().Substring(FileUpload1.PostedFile.FileName.Length - 4) == "docx"
原文地址:https://www.jb51.cc/aspnet/247165.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。