Asp.net mvc 使用预编译的网站运行自定义VirtualPathProvider

Asp.net mvc 使用预编译的网站运行自定义VirtualPathProvider,asp.net-mvc,embedded-resource,precompiled,virtualpathprovider,Asp.net Mvc,Embedded Resource,Precompiled,Virtualpathprovider,目前,我在Asp.net MVC web应用程序中有一个自定义的VirtualPathProvider 这个VirtualPathProvider检查路由“/{Area}/{Controller}/..”中的区域,并使用命名空间{Area}.Main.dll模块返回该程序集中作为嵌入资源包含的视图 这非常有效,我不需要部署任何ascx,js,css文件 现在我的问题是: 我希望在程序集中预编译aspx和ascx文件,而不是将视图作为嵌入式资源,我希望使用带有Response.Write的view

目前,我在Asp.net MVC web应用程序中有一个自定义的
VirtualPathProvider

这个
VirtualPathProvider
检查路由
“/{Area}/{Controller}/..”
中的区域,并使用
命名空间{Area}.Main.dll
模块返回该程序集中作为嵌入资源包含的视图

这非常有效,我不需要部署任何
ascx
js
css
文件

现在我的问题是:

我希望在程序集中预编译
aspx
ascx
文件,而不是将视图作为嵌入式资源,我希望使用带有Response.Write的view类

我可以使用
aspnet\u编译器
预编译视图,但是每当
ViewEngine
试图查找视图失败时,我总是会收到一个错误

我的主要目标是找到一种方法,第一次使用某个视图/用户控件会更快,并且不必等待编译的发生

这是一项要求,因为应用程序可以分组到插件中,并且这些插件可以部署到Bin目录中


有什么想法吗?

这篇博文描述了一个使用反射的解决方案。请注意,他非常明确地表示,这不是微软官方支持的解决方案,但从他博客上的评论来看,这似乎对某些人很有效。

刚刚注意到,有一个类似的问题已经提到了该解决方案。谢谢您的回复。我目前正在测试一个解决方案,使用新的IIS 7.5的预热功能,并自动预加载所有页面以强制编译。。。但我很快就会试试这个。非常感谢!