こんにちは、AjaxFileUpload コントロールを正常に動作させるのに問題があります。同じコードを使用して別のページで適切に動作していますが、このページのパネル内では動作していません。それは適切に機能し、ファイルを選択して「OnUploadComplete」関数にヒットすることができますが、.SaveAs でクラッシュして NullReferenceException が発生します。同様の問題を抱えている他の人を見つけた後、ページの先頭にゴーストアップロードコントロールを配置しましたが、これが必要であるか、コントロールがまったく機能しません。
aspx コード (パネルの外側)
<div style="display:none"> <AjaxControlToolkit:AjaxFileUpload ID="ghostAjaxFileUpload" runat="server" OnUploadComplete="AjaxFileUpload_UploadComplete" /></div>
aspx コード (パネル内)
<AjaxControlToolkit:AjaxFileUpload ID="ajaxupload1" runat="server" ThrobberID="loader123" AllowedFileTypes="jpg,jpeg" MaximumNumberOfFiles="2" OnUploadComplete="AjaxFileUpload_UploadComplete" /><asp:Image id="loader123" ImageUrl="images/loading.gif" Style="display:None" runat="server" />
aspx.cs コード
protected void AjaxFileUpload_UploadComplete(object sender, AjaxControlToolkit.AjaxFileUploadEventArgs e)
{
//...other logic/file checking (working fine)
ajaxupload1.SaveAs(appSession.GlobalImageFolder + appSession.GlobalProductImageFolder + filename);
}
一日中これに取り組んでいて、困惑しました! 私は AjaxFileUpload がとても気に入っているので、別のアップロード コントロールに頼る必要がないことを願っています。これについて何か助けていただければ幸いです。
乾杯、ヨルダン