當我嘗試的默認頁使AJAX部分更新請求(使用UpdatePanel控件)一個IIS7網站,它會失敗 - 而不是返回要更新的html,它會返回整個頁面,然後導致MS AJAX Javascript拋出一個解析shit-fit。
涉嫌原因
我已經縮小的原因到兩個issues-做出一個Ajax請求的默認頁時,我有一定的自定義HTTP模塊註冊。部分渲染請求http://localhost將失敗,但部分渲染請求http://localhost/default.aspx將正常工作。 另外,如果我刪除以下行中我的自定義的HttpModule:
_application.PreRequestHandlerExecute += OnPreRequestHandlerExecute;
的AJAX部分呈現將正常工作。很奇怪吧?
另一個奇怪的事情... 如果我看的trace.axd,我可以看到,當部分呈現請求失敗,二POST請求被記錄爲一個局部呈現一個要求─其中的Default.aspx頁面成功執行(記錄跟蹤信息,例如page_load),但沒有生成內容,另一個似乎沒有實際執行(不記錄跟蹤信息),但生成內容(HTTP_CONTENT_LENGTH大於0)。
請幫忙! 如果有熟悉HTTP模塊或MS AJAX Http模塊的人可以解釋爲什麼發生這種情況,我將非常感激。實際上,如果請求url是「/」,那麼明顯的工作就是重定向到default.aspx,但我真的很想理解爲什麼會發生這種情況。
由於我離開了工作,我無法分辨這是否能解決我的(現在比較老)的問題,但謝謝你的回答,這一直很有啓發。 – WiseGuyEh 2011-09-14 10:15:26