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

Jos*_*eld 17 c# asp.net razor

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

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

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

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

Nic*_*ork 19

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

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

使用自定义VirtualPathProvider加载嵌入式资源部分视图

在数据库中存储ASP.Net MVC视图

ASP.NET MVC从数据库加载Razor视图

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