.net mvc RazorEngine 字符串razor参数替换
在.net中有一个比较好的字符串参数替换的方案RazorEngine
推荐大家看看原网站,然后做个小联系然后你就懂啦
首先呢得下载一个吧,
vs中tools-> Library Paging Manager->Manager Nuget 在然后呢Install-Package RazorEngine 等待搜索结束吧,然后下载下来两个dll
RazorEngine.dll 没说的一定要引用到工程里面的
System.Web.Razor.dll 这个dll工程里面是引用了的 会提示替换,别犹豫替换之,然后右键这个dll看看他的version哦,因为version的不一致是会导致dll找不到滴!在Web.config把version改了就可以了,然后顺手把RazorEngine.dll也加到config中吧!
这样我们就可以使用RazorEngine了!
要在C#后台代码中用哈~,要不然咋编译呢
RazorEngine 会将 template 生成一个临时的 .cs 文件,然后编译并调用。
//string 也可以是js字符串
//@"<script type='text/javascript'>
//巴拉巴拉一堆js代码
//</script>"这个也是可以的
string template =
@"<html> <head> <title>Hello @Model.Name</title> </head> <body> Email: @Html.TextBoxFor(m => m.Email) </body> </html>"; var model = new PageModel { Name = "World", Email = "someone@somewhere.com" }; string result = Razor.Parse(template, model);
看看用起来是不是也挺简单的,@Model 这个就表示了PageModel对象了,C#方法的返回值要转一个HtmlString,前台接到的数据就是一个能直接在Html运行的code了