如何在`dotnet`模板中管理依赖项?

时间:2017-08-22 13:40:20

标签: .net-core

当我使用.NET Core 1.0.4(SDK)

创建新的测试项目时
$ dotnet new mstest

我在.csproj(15.0.0,15.3.0发布时)中看到过时的Microsoft.NET.Test.Sdk

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>netcoreapp1.1</TargetFramework>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.0.0" />
    <PackageReference Include="MSTest.TestAdapter" Version="1.1.11" />
    <PackageReference Include="MSTest.TestFramework" Version="1.1.11" />
  </ItemGroup>

</Project>

这些依赖项何时在模板中更新?在不同的SDK版本?我可以在系统上升级模板吗?或者我是不是手动升级每个新项目?

我升级到.NET Core 2.0(SDK)并再次尝试,现在我获得了相同依赖项的预发布版本!是什么给了什么?

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>netcoreapp2.0</TargetFramework>

    <IsPackable>false</IsPackable>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.3.0-preview-20170628-02" />
    <PackageReference Include="MSTest.TestAdapter" Version="1.1.18" />
    <PackageReference Include="MSTest.TestFramework" Version="1.1.18" />
  </ItemGroup>

</Project>

1 个答案:

答案 0 :(得分:0)

目前使用模板比以前容易得多。 模板从dotnet(dotnet/templating)提取到分离的项目中。 您始终可以从github获取使用过的模板,更改您想要的内容并安装到您的计算机中。

mstest项目模板的源代码存储在here

修复步骤:

  1. 从github获取模板的源代码并将其保存在本地驱动器的某处(我使用的是D:\ Temp \ MSTest-CSharp)。

  2. 更改公司内部的软件包版本.TestProject1.csproj

  3. 使用dotnet new -i命令安装新版本的模板。就我而言,它看起来像

    dotnet new -i d:\ Temp \ MSTest-CSharp

  4. 之后,每当你使用dotnet new mstest时,它都会与你的一组库一起使用新模板。

相关问题