【问题标题】:Running a custom VirtualPathProvider with a PreCompiled website使用预编译网站运行自定义 VirtualPathProvider
【发布时间】:2009-12-11 14:43:32
【问题描述】:

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

VirtualPathProvider 从路由"/{Area}/{Controller}/..." 检查区域并使用NameSpace.{Area}.Main.dll 模块将包含在该程序集中的视图作为嵌入式资源返回。

这很好用,我不必部署任何 ascxjscss 文件。

现在我的问题是:

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

我可以使用aspnet_compiler 预编译视图,但是当ViewEngine 尝试查找视图但失败时,我不断收到错误消息。

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

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

有什么想法吗?

【问题讨论】:

    标签: asp.net-mvc embedded-resource precompiled virtualpathprovider


    【解决方案1】:

    Coskun SUNALI 的这篇 VirtualPathProvider In Precompiled Web Sites 博客文章描述了使用反射的解决方案。请注意,他明确表示这不是微软官方支持的解决方案,但从他博客文章中的 cmets 来看,它似乎对某些人来说效果很好。

    【讨论】:

    • 刚刚注意到有一个类似的问题stackoverflow.com/questions/12397/…已经提到了这个解决方案
    • 感谢您的回复。我目前正在使用新的 IIS 7.5 的预热功能测试解决方案,并自动预加载所有页面以强制编译......但我很快就会尝试。非常感谢!
    猜你喜欢
    • 2014-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多