2

关于如何设置包 RazorGenerator.MsBuild (RGB)以预编译我的视图的说明对我来说有些模糊。我遇到了一些问题,我可以使用一些帮助:

说明可在此处找到:说明

到目前为止我做了什么,发生了什么......

  1. 我已经通过 NuGet 命令将 RGB 安装到我的 Web 应用程序中,没有任何错误(如果我从“管理 NuGet 包”用户界面尝试此操作,然后单击 RGB 的“管理”按钮,我会收到以下错误:“ RazorGenerator.MsBuld 无法安装,因为它与解决方案中的任何项目都不兼容。该包不针对任何框架“ - 这对我来说似乎是个意外)。
  2. 我在 obj\CodeGen 中没有收到任何输出。

注意:我已将“NuGet 包还原”设置为 true,但这似乎无助于自动设置,如标题“在没有 NuGet 包还原的情况下启用目标”(例如目标和设置)下的说明中指定的。

我想我的问题是:如何(以及在​​哪些文件中?/UI?)按照设置 RGB 的说明在我的网络应用程序中设置以下内容?有些东西告诉我这些没有设置,我也无法在我的解决方案或 Web 应用程序项目文件中找到它们:

a) 在您的应用程序中导入 RazorGenerator.target 文件

<Import Project="$(SolutionDir)\packages\RazorGenerator.MsBuild.1.5\tools\RazorGenerator.targets"/>

b) 将属性添加到您的项目

<PrecompileRazorFiles>true</PrecompileRazorFiles>"

编辑:

找到将上述设置放在哪里 - 在我的 Web 应用程序项目文件中,只需将 RazorGenerator.MsBuild.1.5 更改为 RazorGenerator.MsBuild.1.5.3.0(我的版本)。

现在在创建的命名空间上获取 RGB 生成的.cs文件的编译器错误,例如,这是由 RGB 版本 1.5.3.0 生成的:

namespace GAFCOM.Web.Views.Simple.Roofing.Residential.Promotions.12_06_15_Better_Homes_And_Gardens

并产生以下编译器错误:

Error   52  '{' expected
C:\TFS\GAF\Marketing\GAF.com\Dev-branch\GAFCOM\GAFCOM.Web\obj\CodeGen\Views\Simple\Roofing\Residential\Promotions\12_06_15_Better_Homes_And_Gardens\Better_Homes_Gardens.cshtml.cs

RGB 版本 1.5.0.0 生成与以下相同的命名空间:

命名空间 GAFCOM.Web.Views.Simple.Roofing.Residential.Promotions._12_06_15_Better_Homes_And_Gardens(注意最后一个命名空间段之前的下划线)。

如果我在当前项目中更改命名空间以包含下划线(如上),它将编译干净。

有什么想法吗?

4

0 回答 0