Как мне разрешить конфликт версий в aspnet core 2.1?(2.1.1> = 2.1.0-rc1-final) - PullRequest
0 голосов
/ 25 июня 2018

Попытка добавить Microsoft.VisualStudio.Web.BrowserLink 2.1.1 в виде пакета nuget на очень стандартный файл. Файл -> Создать -> Проект .net core 2.1.

Version conflict detected for Microsoft.AspNetCore.Hosting.Abstractions.    Reference the package directly from the project to resolve this issue. 
EngineeringWeb (>= 1.0.0) -> Microsoft.VisualStudio.Web.BrowserLink (>= 2.1.1) -> Microsoft.AspNetCore.Hosting.Abstractions (>= 2.1.1) 
EngineeringWeb (>= 1.0.0) -> Microsoft.AspNetCore.App (>= 2.1.0-rc1-final) -> Microsoft.AspNetCore.Hosting.Abstractions (>= 2.1.0-rc1-final).

Я вспоминаю, как что-то делалв файлах csproj в прошлом для перенаправления версий.Я надеялся избежать этого с помощью core.

.csproj файл:

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

  <PropertyGroup>
    <TargetFramework>netcoreapp2.1</TargetFramework>
  </PropertyGroup>

  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
    <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.App" Version="2.1.1" />
  </ItemGroup>

  <ItemGroup>
    <Folder Include="Features\" />
    <Folder Include="Features\Registration\" />
  </ItemGroup>
  <ItemGroup>
    <Compile Remove="Controllers\HomeController.cs" />
  </ItemGroup>
  <ProjectExtensions>
    <MonoDevelop>
      <Properties>
        <Policies>
          <VersionControlPolicy>
            <CommitMessageStyle LastFilePostfix=":&#xA;  " LineAlign="0" IncludeDirectoryPaths="True" />
          </VersionControlPolicy>
        </Policies>
      </Properties>
    </MonoDevelop>
  </ProjectExtensions>
</Project>

1 Ответ

0 голосов
/ 26 июня 2018

Пакет общей платформы Microsoft.AspNetCore.App всегда должен использоваться без номера версии, например:

<PackageReference Include="Microsoft.AspNetCore.App" />

Таким образом, он будет автоматически разрешен средой выполнения, которая отправляет пакеты и их зависимостикак часть .NET Core и автоматически откатит выпуски патчей.Таким образом, чтобы перейти на 2.1.1, вам просто нужно обновить локальный .NET Core SDK и среду выполнения .NET Core на сервере, на котором вы развертываете.

Что касается вашей проблемы, если вы посмотрите навывод, вы увидите следующее:

Microsoft.AspNetCore.App (>= 2.1.0-rc1-final) 

Версия там 2.1.0-rc1-final.Это говорит о том, что вы не обновили свой локальный SDK ни для 2.1.0 RTM, ни для 2.1.1.Вы можете скачать текущий SDK v2.1.301 здесь .Все загрузки, включая установочные файлы для вашего сервера, можно найти здесь .

...