I'm trying to create a EF 6.4 migration in my solution which has net472 projects and netstandard projects, and I'm getting the following error:
Project 'ESP.Console' targets framework '.NETStandard'. The Entity Framework Package Manager Console Tools don't support this framework.
However, the 'ESP.Console' app doesn't target .NETStandard, it's targetting net472:
<PropertyGroup>
<TargetFramework>net472</TargetFramework>
<LangVersion>7.3</LangVersion>
<OutputType>Exe</OutputType>
</PropertyGroup>
I have ESP.Console
console app set as my startup project, and I have the ESP.Data
project as my default project in the Package Manager console.
This is the setup for ESP.Data.csproj
:
<PropertyGroup>
<TargetFrameworks>netstandard2.1;net472</TargetFrameworks>
<EmbeddedResourceUseDependentUponConvention>true</EmbeddedResourceUseDependentUponConvention>
</PropertyGroup>
I need this to target both netstandard and net472 while I am in the process of converting other applications in the solution to run on .net core.
Why am I getting this error? Is there another command like dotnet ef
I can use that will work with my EF 6.4 project?
We've used EF migrations on this solution hundreds of times, but since the last time I needed to run a migration we've done two major changes to the solution- converted all the csproj files to use the new format (with PackageReference, etc) and converted the core projects to target either .net standard 2.0 or 2.1 where needed. So I think the issue is related to that.
Attempting to change ESP.Console application to run as netcoreapp3.1
gave the same error.