我有一個Web表單,我正嘗試使用.NET AJAX 1.0擴展實現動態下拉列表。我已經成功實現了所需的位,但有一個有趣的怪癖。.NET AJAX 1.0 Aysc回調修改表單操作使用Server.Transfer時
當我從我的第一個下拉列表中選擇一個值時,發生了我的回調,並且我的頁面正確更新。接下來的值I選擇,我收到以下錯誤:我用什麼控制第一,要求作品
Sys.WebForms.PageRequestManagerServerErrorException: An unknown error occurred while processing the request on the server. The status code returned was: 404
Reguarless和第二個沒有。看看我的IIS日誌,我看到以下幾行:
2008-10-17 14:52:14 W3SVC1 127.0.0.1 POST /Aware/Xtend/mParticipant/NewPlannedService.aspx WIN=Participant_1224255079212&Title=Participant 80 - 127.0.0.1 200 0 0
2008-10-17 14:52:20 W3SVC1 127.0.0.1 POST /Aware/mParticipant/NewPlannedService.aspx WIN=Participant_1224255079212&Title=Participant 80 - 127.0.0.1 404 0 0
正如你可以看到我的帖子URL已經完全改變。使用招觀看請求/響應,我可以看到這個從服務器的響應:
|formAction||NewPlannedService.aspx|
這僅僅是一個正在執行的頁面的名稱,相對路徑和查詢字符串已經下車。
我可以通過添加解決這個問題下面我異步回調方法的末尾:
this.Form1.Action = Request.Url.PathAndQuery
但這似乎極其垃圾,氣味有點像發黴的奶酪我。任何一個人都可以指向正確的方向嗎?
更新:進一步檢查後,我發現NewPlannedService.aspx不是原始執行頁面。 Page1.aspx正在執行,然後調用Server.Transfer(「/ folder/NewPlannedService.aspx」)。因此,URI在瀏覽器中是http://whatever.com/Page1.aspx,但正在執行的實際頁面http://whatever.com/folder/NewPlannedService.aspx