asp.net-mvc - ASP.NET MVC中的Razor页面生命周期

标签 asp.net-mvc asp.net-mvc-3 razor pipeline

我总体上关于渲染管道的问题,我已经看到了ASP.NET MVC管道方案,并且有一个名为View Engine的步骤,那么它如何工作?我想了解这种情况:

  • 首先呈现什么,母版页或 View ?
  • 如果我在页面开始时在Response.End()块中使用了@{},是否中断了页面的执行并停止了 View 的渲染?
  • 最佳答案

    What is rendered first, master page or view?



    风景。解析器从布局开始,并构建一个递归到 subview 和 subview 的LIFO(后进先出)结构。 LIFO准备就绪后,它将开始弹出并处理元素。这意味着将在布局之前处理最里面的局部/ View ,最后要处理的是布局本身。

    If i use Response.End() in @{} block at the start of page does this interupt execution of page and stops render of the view?



    在任何 View 中使用Response.End将导致呈现完全空白的页面。切勿在任何 View 中使用。 Response.End基本上会通过触发ThreadAbortException来中止当前线程,这不是您要在Razor View 中执行的操作。

    关于asp.net-mvc - ASP.NET MVC中的Razor页面生命周期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8194369/

    相关文章:

    asp.net-mvc - 哪里是 Simple Injector 等效于 StructureMap 的 ObjectFactory

    asp.net-mvc - MVC3 : Can one controller require Windows Authentication while a second allows anonymous?

    asp.net-mvc - 如何添加没有值的属性

    asp.net-mvc-3 - 在 razor 语句之间输出 HTML 文字会导致编译错误

    asp.net-mvc-3 - Razor View MVC 的搜索输入/文本框的日期验证

    Javascript GetElementById 将值设置为输入

    c# - IDependencyResolver 是一种反模式吗?

    ASP.NET MVC3如何使用间隔一小时的计时器执行 Controller 的操作方法

    ASP.net 多数据库链接

    javascript - 为什么 JavaScript 中带小数的最大位数只有 16