在运行时动态生成Razor视图?

时间:2012-03-14 13:39:13

标签: c# asp.net razor

我正在寻找构建一个Web可配置的布局引擎,并希望直接使用引擎盖下的剃须刀引擎。

假设我通过类,xml或数据库提供了一些信息 - 我想将其转换为本地剃刀代码在运行时(我的意思是暗示我定义内容的来源和结构基于提供者模型)。不是每次请求都转换一个xml文件或其他东西,我想我也可以编写Razor,并让该视图引擎处理所有事情。

我可以将razor代码从非文件系统的源直接插入引擎吗?

如果我在运行时动态生成.cshtml视图和布局到文件中会有任何问题[并在控制器操作中动态设置这些视图]吗?

1 个答案:

答案 0 :(得分:18)

有可能做到。 Razor比传统的Webforms视图引擎有更多的时刻,但这里有一些资源:

http://rebuildall.umbraworks.net/2009/11/17/ASP_NET_MVC_and_virtual_views

Using custom VirtualPathProvider to load embedded resource Partial Views

Storing ASP.Net MVC Views in the Database

ASP.NET MVC load Razor view from database

您将创建一个自定义ViewEngine,用于确定查找视图的位置。视图可以存储在文件系统,数据库中或作为嵌入式资源。阅读我提供的链接,它应该让你去!

相关问题