关于MVC动态模版的真谛,大婶,偶需要你。
我困惑一个问题有3月有余了,希望能从CSDN这得到答案。现在我有个需求,我把它称为razor引擎二次解析。
我想根据不同的条件选择不同的视图,但是这个视图并不是存放在磁盘上.cshtml文件,不能通过去改变视图的寻找规则来实现,视图是存在在数据库中的。我想的就是用一个页面比如a.cshtml 来加载我数据库中的视图页面内容,然后再让razor引擎进行解析。有点类似于@html.raw()。
我想在findView的时候做操作,因为我想razor引擎要解析.cshtml文件上的内容,肯定是需要首先读取它的。
1、我想在读取到.cshml文件的内容之后,用我的数据库存放的视图内容来替换读取到的内容,然后再让razor引擎继续执行解析。
比如 action 里我写了
ViewBag.pubTemp="姓名:@ViewBag.Name";(姓名:@View.Name是我存放在数据库的内容)
ViewBage.Name="张三";
Return View();
a.cshtml页面我只写上 @ViewBag.pubTemp;
我希望得到的答案变成 姓名:张三
所以我把它叫做二次解析,因为razor引擎不会认返回到前台的字符串代码。所以我想在FindView读取文件的时候就将内容给替换掉,然后再让Razor引擎执行下去,理论就能达到我想要的效果了。这有点类似于javascript中的 eval("var a=1");alert(a);
望老师能在百忙中给予一定的解答,小生不胜感激。 --------------------编程问答-------------------- 除 --------------------编程问答-------------------- 找 System.Web.Mvc 的源码看看吧,估计是可以的。 --------------------编程问答-------------------- 还是自己写一套吧,也不难。
mvc的路由是可以拿出来单独使用的。 --------------------编程问答-------------------- 用Razorjs
http://www.coderblog.in/2013/07/use-razor-in-javascript.html --------------------编程问答-------------------- 不过要从数据库读出来生成文件。
补充:.NET技术 , ASP.NET