Using Razor outside of MVC in .NET Core

后端 未结 6 2118
南旧
南旧 2020-11-27 11:05

I would like to use Razor as a templating engine in a .NET console application that I\'m writing in .NET Core.

The standalone Razor engines I\'ve come across (RazorE

6条回答
  •  独厮守ぢ
    2020-11-27 11:41

    For anyone in 2020+ here: I've started https://github.com/adoconnection/RazorEngineCore

    It has latest ASP.NET Core 3.1.1 Razor and it's syntax features.

    Usage is quite the same as RazorEngine:

    RazorEngine razorEngine = new RazorEngine();
    RazorEngineCompiledTemplate template = razorEngine.Compile("Hello @Model.Name");
    
    string result = template.Run(new
    {
        Name = "Alex"
    });
    
    Console.WriteLine(result);
    

    Fast saving and loading

    // save to file
    template.SaveToFile("myTemplate.dll");
    
    //save to stream
    MemoryStream memoryStream = new MemoryStream();
    template.SaveToStream(memoryStream);
    
    var template1 = RazorEngineCompiledTemplate.LoadFromFile("myTemplate.dll");
    var template2 = RazorEngineCompiledTemplate.LoadFromStream(myStream);
    

提交回复
热议问题