【问题标题】:How to Scaffold Razor Pages using CLI?如何使用 CLI 搭建 Razor 页面?
【发布时间】:2017-08-19 01:30:50
【问题描述】:

这个tutorial 显示了Razor PagesAsp.Net Core 2 中的实现。但是,当我运行 CLI 命令时:

 dotnet aspnet-codegenerator razorpage -m PatReg -dc ArtCoreDbContext
 -udl -outDir Pages\--referenceScriptLibraries

输出如下所示

我的 project.cs 中有以下参考包,

<ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.All" Version="2.0.0-preview2-final" />
    <PackageReference Include="Microsoft.AspNetCore.Razor.Tools" Version="1.1.0-preview4-final" />
    <PackageReference Include="Microsoft.Composition" Version="1.0.31" />
    <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="2.0.0-preview2-final" />
    <PackageReference Include="NETStandard.Library" Version="2.0.0" />
    <PackageReference Include="Newtonsoft.Json" Version="10.0.3" />
    <PackageReference Include="Sendgrid" Version="9.8.0" />
    <PackageReference Include="ASPSMS" Version="0.0.2" />
    <PackageReference Include="System.Composition" Version="1.1.0" />
  </ItemGroup>
  <ItemGroup>
    <DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.0.0-preview2-final" />
    <DotNetCliToolReference Include="Microsoft.Extensions.SecretManager.Tools" Version="2.0.0-preview2-final" />
    <DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="2.0.0-preview2-final" />
  </ItemGroup>

我是否缺少参考资料?

【问题讨论】:

    标签: razor scaffolding asp.net-core-2.0


    【解决方案1】:

    确实我错过了一个参考。 我更新了所有包并添加了

     <ItemGroup>
        <DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="1.0.1" />
    </ItemGroup>
    

    最终.csproj 看起来像

    <Project Sdk="Microsoft.NET.Sdk.Web">
    
      <PropertyGroup>
        <TargetFramework>netcoreapp2.0</TargetFramework>
        <MvcRazorCompileOnPublish>true</MvcRazorCompileOnPublish>
        <UserSecretsId>--------------------------</UserSecretsId>
      </PropertyGroup>
    
      <ItemGroup>
        <PackageReference Include="Microsoft.AspNetCore.All" Version="2.0.0" />
        <PackageReference Include="Microsoft.Composition" Version="1.0.31" />
        <PackageReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.0.0" />
        <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="2.0.0" />
        <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="2.0.0" />
        <PackageReference Include="Newtonsoft.Json" Version="10.0.3" />
      </ItemGroup>
      <ItemGroup>
        <DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="1.0.1" />
      </ItemGroup>
      <ItemGroup>
        <DotNetCliToolReference Include="Microsoft.Extensions.SecretManager.Tools" Version="2.0.0-preview2-final" />
      </ItemGroup>
    
    </Project>
    

    【讨论】:

      【解决方案2】:

      在项目文件夹中,运行以下两条命令。

      dotnet add package Microsoft.VisualStudio.Web.CodeGeneration.Design
      
      dotnet build
      

      参考:https://gavilan.blog/2018/04/28/asp-net-core-2-doing-scaffolding-with-dotnet-cli-aspnet-codegenerator/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-09-06
        • 2016-06-09
        • 1970-01-01
        • 2019-04-06
        • 2019-07-12
        • 2020-09-03
        • 2021-12-25
        • 1970-01-01
        相关资源
        最近更新 更多