View的呈现(二)加载流程

这块涉及到Code+Razor模板=》html【output流】

而这块的问题在于Razor最后生成了什么?--对象;一个类文件;eg:index.cshtml  => index_csthml.cs... 

通过反编译,会知道项目编译后global、cshtml等文件都生成一个DLL文件

 Home下面的每个action都生成了一个类

Shard 文件夹也生成一个dll,每个csthml变成一个类。。

 同时,cshtml会生成一个继承自 WebViewPage<object> 的类

 

 先看一下整体VIew的加载流程图:

 

 源码流程:

此时这个View中有2个对象一个是父类模板的RazorView一个是自己当前模板的RazorViewEngine

 

 

 

最后释放占用资源,整个流程就结束了

原文地址:https://www.cnblogs.com/cuijl/p/7405651.html