无法通过拖放在网页中使用多个用户控件实例上传文件(ASPX页面)

时间:2017-08-27 18:25:22

标签: asp.net file-upload drag-and-drop user-controls ajaxuploader

<div id="divDropZone">
   <p>
        Drag and drop an Image to Upload
   </p>
   <p>
        <button id="btnInsertButton">Or Select Image to Upload</button>
   </p>
   </div>
   <CuteWebUI:Uploader runat="server" ManualStartUpload="false" ID="UploaderFile"
      InsertButtonID="btnInsertButton" DropZoneID="divDropZone" OnFileUploaded="Uploader_FileUploaded">
      <ValidateOption AllowedFileExtensions=".png,.jpg,.bmp,.jpeg,.gif" MaxSizeKB="10240" />

上面是呈现dropzode的代码,其中用户可以拖动&amp;删除文件以上传它。

以下是第三方DLL,使用的dev框架和浏览器描述的描述:

  • 第三方产品名称:CuteWebUI.AjaxUploader.dll 4.0
  • 开发框架:.Net Framework 4.5
  • 浏览器:GoogleChrome 60.0.3112.101(64位)

以下是重现问题的步骤:

  1. 在.NET Framework 4.5中创建了一个网页(ASPX页面)。

  2. 创建了一个用户控件,并将其引用添加到步骤1中创建的网页。

  3. 添加了&#34; CuteWebUI.AjaxUploader.dll&#34;的引用和web.config中的许可证文件的路径。

  4. 在步骤2中创建的用户控件中实现了上述代码。

  5. 添加了在步骤#2中创建的2个用户控件实例,即ResumeUpload部分中的一个和Bootstrap Popup中的另一个。

  6. 当我们只使用一个用户控件实例而不是2时(我们需要避免重复代码),它会按预期工作。

  7. 但是当我们添加2个用户控件实例时,它会在dropzone中拖放文件时抛出以下异常:     &#34;服务器端异常,无法上传Sample.pdf        调试信息:        System.Exception的:        X1 GUID错误\ x0D \ x0A at        CuteWebUI.UploadModule.a(@HttpContext A_0,GUID A_1)

  8. 注意:我们尝试了以下内容,但它对我们没有用处:

    <ValidateOption EnableMimetypeChecking="false" />
    

1 个答案:

答案 0 :(得分:0)

检查用户控件DropZoneID属性。如果多个控件具有相同的放置区域,则丢弃的文件将导致每个控件中的上载。这似乎导致此GUID错误异常。 为每个控件设置一个单独的放置区将解决问题。