我想知道.cshtml文件中的代码属于哪个类,以便我可以跟踪更高层次结构。所以我的问题是
.cshtml文件中的代码属于哪个类?
答案 0 :(得分:1)
.cshtml扩展名,如果是使用razor视图引擎的MVC视图。因此,如果您想知道视图的Model类是什么,请查找应位于文件顶部的@model指令。即:
@model MyNamespace.MyModel
现在,如果您想了解View在.Net框架中继承的类。我认为最接近它的是System.Web.Mvc.ViewResult类。但请记住,在MVC View引擎中,View代码和ViewResult之间没有直接关系。有点像.aspx文件和类后面的代码之间的关系。这是一个好的开始:http://msdn.microsoft.com/en-us/library/system.web.webpages.webpage(v=vs.111).aspx
我希望这对您的问题有所帮助。
答案 1 :(得分:1)
如果我正确理解你的问题,那么.cshtml文件就不属于某个类。 Razor View引擎通过控制器的return View()
方法解析传递给它的视图的内容。
由于解析器引擎具有C#(以及VB)的语义知识,因此能够区分文本和C#代码块并对其进行适当处理。
如果您对视图引擎的工作方式有了更深入的了解,那么我可能会建议您看一下构建自己的简单视图引擎,做这样的任务是了解视图引擎内部工作原理的好方法的工作原理。