MVC原生解析引擎aspx页面,智能提示好像还依赖于web.config中compilation节点下的assemblies列表

以前用MVC,不是用的原生态视图解析引擎,调式MVC源代码一直没有注意,这次项目准备用原始视图解析引擎,我想调式MVC源代码的时候,把web.config中compilation节点下的assemblies中的MVC assembly注释了,发现aspx里涉及MVC的智能提示代码都不出来了,比如Model都不能智能提示了,并且编译后还不能运行了,因为比如页面上继承System.Web.Mvc.ViewMasterPage的程序集也找不到了。

按理说所有程序集,项目引用了都应该可以用,比如action里的方法都是可以智能提示,完全没有问题,而且编译的时候action都可以解析,当解析view时,就找不到程序集了。

简单分析得出结论,action里直接写c#代码的编译直接就读引用的dll文件存放地址,默认bin或者其他设置的assembly地址,但aspx页面解析就不是直接用的已经有的dll文件解析了,而是要先通过web.config中compilation节点下的assemblies列表来读取,再解析,但已经读不到了,所以就抛出。

居然两个地方解析方式不一样,很奇怪,实际也确实运行不起来,暂时得出这个结论。

原文地址:https://www.cnblogs.com/Lawson/p/1886856.html