1

更具体地说,当cshtml需要 a 时,会发生什么?我需要构建一个只有 ashx 和模板引擎的应用程序,没有MVC的东西,简单的渲染,但我不想失去动态更改cshtml文件的能力。所以我必须以某种方式管理它们的重新编译,可能不需要回收应用程序服务器加载和卸载AppDomains

在第一个请求中,我可以构建页面并将其加载到某种缓存中(例如codeplex 上的RazorEngine),然后重用它。当页面更改时,我应该更改页面,就是这样。

但据我了解assembly,每个页面都会构建一个新的,因此如果频繁更改(这可能发生在我的环境中),将会加载大量程序集。

问题是,

它如何适用于标准 MVC?使用 CodeDom,还是直接添加 IL,无需创建新程序集?

我现在想到的一件事是,在构建之后assembly,可以对其进行反编译,然后IL直接加载到应用程序上,这是有道理的

如果不清楚,请要求进一步澄清!(欢迎对这个 Stackoverflow 新手提出任何建议

4

1 回答 1

0

好的,首先加载 cshtml 文件,然后使用标准 CSharp/VbCodeCompiler 将文件编译到自己的程序集中,据我所知,不存在代码 dom...

于 2013-12-12T11:22:25.510 回答