我在ASP.Net中的項目C#編譯和運行正常,除了當我嘗試加載一個具有Ajax控件工具包HTMLEditorExtender的特定頁面。我得到一個密鑰不能爲空頁錯誤。我嘗試刪除htmleditorextender並放置一個asynchfileupload控件,而不是僅僅爲了確保scriptmanager正在工作,並且頁面正常運行並且上傳控件可以工作。所以這與htmleditorextender具體有關。下面是我的代碼有:HTMLEditorExtender導致'密鑰不能爲空'錯誤
<asp:TextBox ID="txtMailMsgContent" TextMode="MultiLine" runat="server"/>
<cc1:HtmlEditorExtender ID="HTMLEditorExtender" runat="server"
TargetControlID="txtMailMsgContent">
<Toolbar>
<cc1:Undo />
<cc1:Redo />
<cc1:Bold />
<cc1:Italic />
<cc1:Underline />
<cc1:StrikeThrough />
<cc1:Subscript />
<cc1:Superscript />
<cc1:JustifyLeft />
<cc1:JustifyCenter />
<cc1:JustifyRight />
<cc1:JustifyFull />
<cc1:InsertOrderedList />
<cc1:InsertUnorderedList />
<cc1:CreateLink />
<cc1:UnLink />
<cc1:RemoveFormat />
<cc1:SelectAll />
<cc1:UnSelect />
<cc1:Delete />
<cc1:Cut />
<cc1:Copy />
<cc1:Paste />
<cc1:BackgroundColorSelector />
<cc1:ForeColorSelector />
<cc1:FontNameSelector />
<cc1:FontSizeSelector />
<cc1:Indent />
<cc1:Outdent />
<cc1:InsertHorizontalRule />
<cc1:HorizontalSeparator />
</Toolbar>
</cc1:HtmlEditorExtender>
,顯示頁面錯誤的錯誤行是這一個:
<cc1:HtmlEditorExtender ID="HTMLEditorExtender" runat="server" TargetControlID="txtMailMsgContent">
這是堆棧跟蹤:
[ArgumentNullException: Key cannot be null.
Parameter name: key]
System.Collections.Hashtable.get_Item(Object key) +9355627
AjaxControlToolkit.Sanitizer.Sanitizer.Initialize() +163
AjaxControlToolkit.HtmlEditorExtender..ctor() +54
ASP.mail_emailmessage_aspx.__BuildControlHTMLEditorExtender() in c:\Inetpub\wwwroot\Mail\EMailMessage.aspx:111
ASP.mail_emailmessage_aspx.__BuildControlformMailMessage() in c:\Inetpub\wwwroot\Mail\EMailMessage.aspx:84
ASP.mail_emailmessage_aspx.__BuildControlTree(mail_emailmessage_aspx __ctrl) in c:\Inetpub\wwwroot\Mail\EMailMessage.aspx:1
ASP.mail_emailmessage_aspx.FrameworkInitialize() in c:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\26676eb7\92c7e946\App_Web_kemmoois.0.cs:0
System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +54
System.Web.UI.Page.ProcessRequest() +78
System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context) +21
System.Web.UI.Page.ProcessRequest(HttpContext context) +49
ASP.mail_emailmessage_aspx.ProcessRequest(HttpContext context) in c:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\26676eb7\92c7e946\App_Web_kemmoois.0.cs:0
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +100
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +75
任何幫助會大大appreaciated。我試着用Google搜索這個錯誤,並找不到似乎可行的解決方案。
嘗試由Bertzzie提供的解決方案http://stackoverflow.com/questions/12022493/could-not-load-type-ajaxcontroltoolkit-sanitizer-antixsssanitizerprovider。 它適用於我。 –