source

.NET Entity Framework 버전이 다르므로 코어 빌드 경고

itover 2022. 11. 22. 21:30
반응형

.NET Entity Framework 버전이 다르므로 코어 빌드 경고

VS 2019를 사용하는 여러 프로젝트에서 컴파일 시 이 빌드 경고를 생성합니다.

5>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\Microsoft.Common.CurrentVersion.targets(2081,5): 경고 MSB3277: "Microsoft"의 다른 버전 간에 충돌이 발견되었습니다.EntityFrameworkCore"를 확인할 수 없습니다.이러한 참조 경합은 로그 상세도가 설정된 경우 빌드 로그에 나열됩니다.

로그가 사실...상세 모드에서도 조금 조사했더니 Pomelo에 의해 에러가 발생한 것 같습니다.EntityFrameworkCoreMysql/3.1.2(MariaDB를 사용하고 있습니다).다음은 EF 3.1.0에 의존하는 프로젝트 json의 발췌입니다.현재 버전은 3.1.6입니다.

  "Pomelo.EntityFrameworkCore.MySql/3.1.2": {
    "type": "package",
    "dependencies": {
      "Microsoft.EntityFrameworkCore.Relational": "3.1.0",
      "MySqlConnector": "[0.61.0, 1.0.0)",
      "Pomelo.JsonObject": "2.2.1"
    },

PackageReference에는 경고가 발생한 테스트프로젝트의 섹션이 포함되어 있습니다.

  <ItemGroup>
    <PackageReference Include="FluentAssertions" Version="5.10.3" />
    <PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.6.1" />
    <PackageReference Include="NSubstitute" Version="4.2.2" />
    <PackageReference Include="XmlUnit.Core" Version="2.8.0" />
    <PackageReference Include="xunit" Version="2.4.1" />
    <PackageReference Include="xunit.runner.visualstudio" Version="2.4.2">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
    </PackageReference>
    <PackageReference Include="coverlet.collector" Version="1.3.0">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
    </PackageReference>
  </ItemGroup>

어떻게 하면 좋을까요?

  • 이 경고를 무시합니다(및 의존관계 업데이트를 기다립니다).
  • EF 3.1.0으로 다운그레이드
  • 다른 생각 없어?

BR

테스트 프로젝트에서 문제 메모리 패키지에 대한 참조가 누락되었습니다.두 번째 프로젝트에서 참조하는 프로젝트에 추가하는 것만으로는 충분하지 않습니다.

테스트 프로젝트에 추가합니다.

<PackageReference Include="Microsoft.EntityFrameworkCore.Relational" Version="3.1.6" />
<PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="3.1.2" />

아직 시스템과 관련된 문제가 있는 경우.배열.Configuration Manager도 추가

<PackageReference Include="System.Configuration.ConfigurationManager" Version="4.7.0" />

테스트 csproj로 이동합니다.

언급URL : https://stackoverflow.com/questions/63230575/net-core-build-warning-due-to-different-versions-of-entityframework

반응형