After the update of Entity Framework to version 6.4.4 the migrate.exe
was replaced with ef6.exe
. This made a breaking change in my release pipeline in Azure DevOps. I've tried to update the migration command from originaly working
$(System.DefaultWorkingDirectory)/_IdentityServer-CI-Build/drop/migration/migrate.exe Identity Identity.Migrations.AspNetIdentity.Configuration /connectionString=$(connectionstring) /connectionProviderName="System.Data.SqlClient"
to current version
$(System.DefaultWorkingDirectory)/_IdentityServer-CI-Build/drop/migration/ef6.exe database update --verbose --assembly Identity.dll --connection-provider "System.Data.SqlClient" --connection-string '$(connectionstring)'
running on a copy of $(Build.SourcesDirectory)\packages\EntityFramework.6.4.4\tools\net45\any\ef6.exe
.
Unfortunatelly I'm getting an error
System.Data.Entity.Tools.CommandException: Your target project 'Identity' doesn't reference EntityFramework. This package is required for the Entity Framework Core Tools to work. Ensure your target project is correct, install the package, and try again. ---> System.IO.FileNotFoundException: Could not load file or assembly 'EntityFramework' or one of its dependencies. The system cannot find the file specified.
According to the error it seems to me the tool is not suitable for .NET Framework projects. Since there is practically no documentation for using this tool on .NET Framwork projects, I've checked the source code to at least get the parameters, but I have no idea what to do about this error or what different approach to use to do the update from the pipeline.