razor - 有没有办法在构建时在类库项目中启用编译 cshtml 模板?

标签 razor razorengine

我目前在非 Web 应用程序中使用 RazorEngine。

我有一个类库,其中包含模板文件、模板中使用的模型以及 RazorEngine 的包装器,用于正确配置它并提供简单的模板处理。

我已按照说明详细说明 how to enable intellisense ,而且工作正常。

目前,当我构建项目时,即使模板中有错误,构建也会成功。如果我打开所有模板文件,则任何检测到的错误都会显示在“错误列表”选项卡中。但即使我在所有这些文件打开的情况下构建项目并且错误列表中的错误,构建仍然成功。

如果这是一个网络项目,我可以按照 this question 使用“MvcBuildViews” .但是由于我在一个类库项目中,我假设支持该选项的构建基础结构尚未包含在该项目中,因此它不会产生任何影响。

我已经在谷歌上搜索过,特别是在 SO 上,但我没有找到任何关于将这些构建功能添加到我的项目所需的信息。

获取构建错误,并在出现错误时阻止构建成功是我的主要目标。

有没有一种简单的方法来检查构建时的 Razor 错误?

是否有一种不那么简单的方法可以将所需的功能添加到现有项目的构建过程中?

从 Web 项目开始,然后去掉我不需要的所有内容并假装它是一个类库项目是我唯一的选择吗?

最佳答案

Is there a simple way to check for razor errors on build?



没有我所知道的。 https://github.com/vladimir-shmidt在 Gitter 中说他在构建时编译模板并将结果作为资源包含在内。但我认为代码不可用。

Is there a not so simple way to add the required functionality to the build process for the existing project?



取决于您的依赖项,但它“应该”非常简单:
  • 将新的控制台应用程序添加到您的解决方案
  • 使用 Razor 模板引用项目
  • 使用 Engine.Razor.Compile编译模板(在控制台应用程序中)
  • 添加构建步骤以执行控制台应用程序

  • 希望这有帮助/有效,

    matthid,RazorEngine 贡献者

    关于razor - 有没有办法在构建时在类库项目中启用编译 cshtml 模板?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31295005/

    相关文章:

    c# - 如何将数组与 RazorEngine 一起使用?

    RazorEngine 和 Visual Studio 2015 智能感知

    c# - 在数组中使用命名键 C# MVC razor

    javascript - 从 Razor 代码中使用 javascript/jquery

    c# - 我可以将 C# 变量分配给 javascript 函数的 return 语句吗?

    c# - 为什么在 NopCommerce 中使用@T?它的好处/用途是什么?

    asp.net-mvc - RazorEngine.Text.RawString 不适用于常规 MVC 部分 View

    javascript - 调用 location.reload() 函数后,是什么导致表中的顺序或行发生变化

    asp.net-mvc-3 - MVC 3 Razor - 在局部 View 的布局页面中使用脚本引用

    asp.net - 孤立的 RazorEngine 无法将模型传递到不同的 AppDomain