ASP.NET 和MVC母版页之间的区别是什么?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (170)

ASP.NET母版页和MVC母版页之间有什么区别?那么AJAX母版页呢?

提问于
用户回答回答于

大部分归结于默认的控制和继承。

AJAX Master和ASP.NET Master都从System.Web.UI.MasterPage继承,而MVC Master从ViewMasterPage继承。

显然,这些给你稍微不同的控制 - ,ViewMasterPage公开了Ajax / Html / Url助手等,这些对其他MasterPages不可用。

除此之外,默认控件略有不同:

  • ASP.NET母版页将有默认的Form和两个ContentPlaceHolder控件(一个在头部,一个在表单中)。
  • AJAX母版页面还在Form控件中添加了一个ScriptManager控件。
  • MVC Master(取决于版本 - 我指的是Beta)将只有两个ContentPlaceHolder控件(头部和身体)。

“生命周期差异”来自Page / ViewPage,而不是MasterPage / ViewMasterPage控件。

用户回答回答于

MVC中的ViewMasterPage不过是一个主页,它显示了与ViewPage相同的帮助器。这使您可以访问AjaxHelper,HtmlHelper,TempDataDictionary,UrlHelper,ViewContext,ViewData和HtmlTextWriter。

与ViewPage一样,当使用WebFormsViewEngine(默认)时,应该拒绝任何不惜代价地重载页面生命周期事件的冲动!它们仍然存在,并且自从底层ProcessRequest(...)仍然在页面上调用它们后,它们仍然会运行。

扫码关注云+社区

领取腾讯云代金券