ASP.NET主頁面和MVC主頁面有什麼區別?和關於這個問題的AJAX主頁?ASP.NET MVC主頁面
回答
大部分歸結爲默認控件和繼承。
AJAX Master和ASP.NET Master都從System.Web.UI.MasterPage繼承,而MVC Master從ViewMasterPage繼承。
顯然,這些給你稍微不同的控制 - 正如John Clayton所述,ViewMasterPage公開了Ajax/Html/Url助手等,這些對其他MasterPages不可用。
除此之外,默認的控制稍有不同:
- ASP.NET母版頁都會有默認的表和兩個ContentPlaceHolder控件(一個在頭,一個在形式
- AJAX。母版頁還增加了表格控件中ScriptManager控件
- MVC碩士(取決於版本 - 我指的Beta版)。只會有兩個ContentPlaceHolder控件(在頭部和身體)
「生命週期差異」來自Page/ViewPage,而不是MasterPage/ViewMasterPage控件。
作爲一個快速猜測,我不得不說,答案將是「生命週期」。 ASP.NET WebForms,MVC和AJAX都有不同的生命週期,這些生命週期會影響主頁面控件需要響應的事件。一個WebForms母版頁需要對Load,DataBind,PreRender,Render等進行響應。一個MVC母版頁可能(不確定)只需要渲染操作。所有其他事件都是多餘的,並且可以在控制器中找到相應的代碼。最後,AJAX母版頁需要處理正常的AJAX請求。
正如我所說,這是一個有點猜測的那麼多研究建議
的ViewMasterPage在MVC比公開相同的助手作爲的ViewPage母版頁而已。這使您可以訪問AjaxHelper,HtmlHelper,TempDataDictionary,UrlHelper,ViewContext,ViewData和HtmlTextWriter。
與ViewPage一樣,當您使用WebFormsViewEngine(默認)時,您應該拒絕任何不惜代價地重載頁面生命週期事件的衝動!他們仍然在那裏,他們仍然會在ProcessRequest(...)之下運行,因爲ProcessRequest(...)仍然在頁面上調用。
您指的是哪個AJAX母版頁?我不熟悉框架中包含的任何內容...
- 1. ASP.NET MVC主頁面變量範圍
- 2. ASP.NET MVC 1.0嵌套主頁面
- 3. 動態主頁面聲明 - ASP.NET MVC
- 4. ASP.NET MVC從錯誤頁面重定向到主頁頁面
- 5. ASP.NET MVC Master頁面
- 6. 緩存Asp.net Mvc主頁
- 7. ASP.NET MVC中的主頁
- 8. ASP.NET MVC 3刪除/主頁
- 9. ASP.NET MVC主頁數據
- 10. 是否有能力在ASP.NET MVC 5的主頁面內使用主頁面?
- 11. ASP.NET MVC頁面/子頁面路由
- 12. 控制asp.net MVC內容頁面的主頁控制3
- 13. 如何使頁面不使用ASP.NET MVC中的主頁3
- 14. ASP.Net主頁面和頁面狀態
- 15. C#-Asp.net MVC主頁/索引頁面重定向到登錄頁面
- 16. ASP.Net MVC頁面加載
- 17. ASP.NET MVC 3登錄頁面
- 18. ASP.NET MVC - 在頁面卸載
- 19. 刷新asp.net mvc頁面
- 20. ASP.NET MVC下的SSL頁面
- 21. 創建asp.net頁面MVC
- 22. asp.net mvc:頁面找不到
- 23. ASP.NET MVC「離線」頁面
- 24. ASP.NET MVC +多語種頁面
- 25. asp.net mvc超鏈接頁面?
- 26. ASP.Net的等效頁面MVC
- 27. 加載頁面ASP.Net MVC
- 28. asp.net MVC jquery頁面轉換
- 29. ASP.net MVC呈現html頁面
- 30. jQuery.validate.js和asp.net主頁面