title: ASP.NET, C#, IIS, MIME TYPES, FILE UPLOAD CONDITIONAL
body: <p>I have a file upload web-form on the website and it needs to only accept certain formats (or MIME types)...</p>
  
  <p>The following code is working PERFECTLY, EXCEPT, it does not upload .DOCX files to the server ! That is the only file type that does not work... I have double checked every line of code and have even gotten into the IIS manager to ensure .DOCX MIME types were inherited, and they were...</p>
  
  <p>Does anyone have any idea why .DOCX files will not upload to the server like every other filetype does?</p>
  
  <p>Snippet of code:</p>
  
  <pre><code>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."; 
      }
  </code></pre>