RazorEngine

TemplateServiceConfiguration templateConfig
                = new TemplateServiceConfiguration
                    {
                        BaseTemplateType = typeof(HtmlTemplateBase<>)
                    };
            Razor.SetTemplateService(new TemplateService(templateConfig));
            string template = "This is my sample template, Hello @Href()";

            Razor.Compile(template,typeof(TestModel),"aa");
            Console.WriteLine(Razor.Run("aa",new TestModel() { Name = "World"}));
            
    public class HtmlTemplateBase<T>:  TemplateBase<T>
    {

        public string Href()
        {
            var m = Model as TestModel;
            return m.Name.ToUpper();
        }

    }

    public class TestModel
    {
        public string Name
        {
            get;
            set;
        }
    }
修改Razorjs,不过他们引用的RazorEngine,太老的针对的是mvc3的,很多类都不对,去codeplex看了下,现在也搬家去github了。另外Razorjs也不支持Session,到时候还要改下

主要是RazorEngine v2.1的设置模板的方式到3.0的时候变了 
v2Razor.SetTemplateBase(typeof(MyCustomTemplateBase<>));v3
Razor.SetTemplateService
 

RazorEngine

时间: 2024-10-17 03:00:42

RazorEngine的相关文章

RazorEngine在非MVC下的使用,以及使用自定义模板

---恢复内容开始--- RazorEngine模板引擎大大的帮助了我们简化字符串的拼接与方法的调用,开源之后,现在在简单的web程序,winform程序,甚至控制台程序都可以利用它来完成. 但如何在使用中调用方法和使用自定义模板呢?来看这样一个例子 1 string str="hello @Model.Name"; 2 string parse=Razor.Prase(str,new {Name="Tom"}); 3 Console.WriteLine(parse

.net mvc RazorEngine 字符串razor参数替换

在.net中有一个比较好的字符串参数替换的方案RazorEngine推荐大家看看原网站,然后做个小联系然后你就懂啦 首先呢得下载一个吧, vs中tools-> Library Paging Manager->Manager Nuget 在然后呢Install-Package RazorEngine 等待搜索结束吧,然后下载下来两个dll RazorEngine.dll  没说的一定要引用到工程里面的 System.Web.Razor.dll 这个dll工程里面是引用了的  多以会提示替换,别犹

模版引擎RazorEngine简介

ASP.NET MVC的Razor想必大家都比较熟悉,这里介绍一个独立于ASP.NET的RazorEngine. RazorEngine是一个开源的项目,它的基础就是ASP.NET MVC的Razor.GitHub项目地址. 您可以在Windows Console或者Windows Forms使用它. 下面简单介绍如何使用. 1.创建一个Windows Console 2.通过NuGet安装RazorEngine 3.下面先介绍使用字符串替代cshtml文件模板的代码. using RazorE

RazorEngine性能研究(反射的延深)

先说下结论 1)RazorEngine 确实很慢,编译过程特别慢,编译过后仍不适合大量重复调用的情况(一次调用可以接受). 2 )   RazorEngine 和 asp.net mvc 里的Razor 的关系目前不清楚,所以这里的结论不代表asp.net mvc慢. 3).net 4.6里的反射性能较.net 2.0 略有提升,大概反射赋值的性能由原生赋值的1/5 提升到1/4. 这里测试RazorEngine时,实现了一个对象属性赋值器: using System.Diagnostics;

让Windows2003 Server NET4.0 Frameworks可以上使用RazorEngine程序集。

Windows 2003 Server目前只能安装dotNET Frameworks 4.0框架,而无法安装dotNET Frameworks 4.5以及4.5.1,如果要在2003 server上运行RazorEngine程序集,那么必须得引用编译目标是4.0版的,同时System.Web.Razor.dll这个程序集也得是NET4.0的,如果编译目标不是4.0平台,那么这个程序集里会有一个方法引用了4.5框架里的方法,所以是无法跑在win2003 server系统上的. 解决问题的办法是,自

RazorEngine 学习笔记

refer : https://github.com/Antaris/RazorEngine 微软的模板编辑器. Install-Package RazorEngine using RazorEngine; using RazorEngine.Templating; string templatePath = @"D:\Google Drive\learn\TDD\TDD\Views\Email\Index.cshtml"; string template = System.IO.Fi

使用RazorEngine对ASP.NET MVC的Views进行UnitTest

有的时候我们需要对Razor最后生产的文本(HTML OR XML OR..)进行单元测试. 使用Nuget安装RazorEngine. 新建一个ASP.NET MVC项目,并且带有测试项目. 修改Index.cshtml @using TestRazor.Models @model TestModel <div>This is a test page</div> <div>Name @Model.Name </div> <div>Age @Mo

NET MVC RazorEngine 解析模板生成静态页

ASP.NET MVC 解析模板生成静态页一(RazorEngine) 简述 Razor是ASP.NET MVC 3中新加入的技术,以作为ASPX引擎的一个新的替代项.在早期的MVC版本中默认使用的是ASPX模板引擎,Razor在语法上的确不错,用起来非常方便,简洁的语法与.NET Framework 结合,广泛应用于ASP.NET MVC 项目. 我们在很多项目开发中会常常用到页面静态化,页面静态化有许多方式,最常见的就是类似很多PHP CMS种使用的 标签替换的方式(如:帝国CMS.EcSh

用Razor語法寫範本-RazorEngine組件介紹【转——非常好,可以用它来代替NVelocity】

RazorEngine 官網網址:http://razorengine.codeplex.com 在找到RazorEngine之前曾經想過其他的方案,如T4與V8 Engine載jquery.template,但T4如果要獨立於MSBuild或Visual Studio執行有點麻煩,而V8 Engine我又不想在Class Library專案中放一堆js檔,後來就想到Razor,因為Razor的相關處理都是寫在System.Web.Razor,雖然Namespace叫System.Web,但根本