实现ASP.NET MVC View Engine以进行预处理

时间:2009-02-26 19:21:22

标签: asp.net-mvc viewengine

我想实现ASP.NET MVC View Engine来执行原始.aspx / .ascx的一些预处理。文件。 然后,我想将结果传递给默认视图引擎(通常是WebForm视图引擎)。

这意味着,默认的View Engine不应该从磁盘读取此文件,因为尚未处理。相反,我希望View Engine从输入流中读取输入。

这可能吗? 我应该创建映射到此预处理视图引擎的新文件扩展名吗?

THX

1 个答案:

答案 0 :(得分:2)

您需要创建一个自定义视图引擎来读取aspx文件,根据需要修改它们,然后将它们传递给某个构建提供程序。 WebFormsViewEngine使用System.Web.Complilation.BuildManager类来构建aspx文件。您将遇到的问题是BuildManager只接受虚拟路径,它不接受流或字符串。这意味着您可能还必须创建自己的构建管理器。在System.Web.Compilcation命名空间中查看是否可以找到任何可能有用的内容。以下是一些可能指向正确方向的消息来源。

This可能是一个有用的资源。