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

时间:2015-07-08 14:00:36

标签: razor razorengine

我目前正在非网络应用程序中使用RazorEngine。

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

我按照详细说明how to enable intellisense的说明进行操作,并且工作正常。

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

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

我一直在Google上搜索,特别是搜索SO,但我没有找到任何关于将这些构建功能添加到我的项目中所需的内容。

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

有没有一种简单的方法来检查构建中的剃刀错误?

是否有一种不太简单的方法可以为现有项目的构建过程添加所需的功能?

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

1 个答案:

答案 0 :(得分:3)

  

有没有一种简单的方法来检查构建中的剃刀错误?

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

  

是否有一种不太简单的方法可以为现有项目的构建过程添加所需的功能?

取决于您的依赖关系,但它“应该”非常简单:

  • 向您的解决方案添加新的控制台应用程序
  • 使用Razor模板引用项目
  • 使用Engine.Razor.Compile编译模板(在控制台应用程序中)
  • 添加构建步骤以执行控制台应用程序

希望这有助于/有效,

matthid,RazorEngine撰稿人