Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net core 使用实体框架在生产服务器上迁移_Asp.net Core_Entity Framework Core_Entity Framework Migrations - Fatal编程技术网

Asp.net core 使用实体框架在生产服务器上迁移

Asp.net core 使用实体框架在生产服务器上迁移,asp.net-core,entity-framework-core,entity-framework-migrations,Asp.net Core,Entity Framework Core,Entity Framework Migrations,我想在我的服务器上应用迁移,但出现了一个错误,要求我指定项目,但当我指定项目时,又出现了另一个错误 然而,他们在发展中工作 以下是第一个错误: dotnet ef database update 未找到任何项目。更改当前工作目录或使用--project选项 这里是第二个: dotnet ef database update --project Devystri /var/www/devystri/devystri(1,1):错误MSB4025:无法加载项目文件。根级别的数据无效。第1行,位置

我想在我的服务器上应用迁移,但出现了一个错误,要求我指定项目,但当我指定项目时,又出现了另一个错误

然而,他们在发展中工作

以下是第一个错误:

dotnet ef database update
未找到任何项目。更改当前工作目录或使用--project选项

这里是第二个:

dotnet ef database update --project Devystri
/var/www/devystri/devystri(1,1):错误MSB4025:无法加载项目文件。根级别的数据无效。第1行,位置1。
无法检索项目元数据。确保它是SDK样式的项目。如果使用的是自定义BaseMediateOutputPath或MSBuildProjectExtensionsPath值,请使用--MSBuildProjectExtensionsPath选项

这里是我的迁移文件:


谢谢大家!

解决方案是将其添加到Program.cs中:

public static void Main(string[] args)
        {
            var host = CreateHostBuilder(args).Build();
            
            using (var scope = host.Services.CreateScope())
            {
                var db = scope.ServiceProvider.GetRequiredService<MyDbContext>();
                try
                {                    
                   db.Database.Migrate();

                }
                catch (Exception e)
                {
                    Console.WriteLine(e.Message);
                }
                
            }

            host.Run();
        }
publicstaticvoidmain(字符串[]args)
{
var host=CreateHostBuilder(args.Build();
使用(var scope=host.Services.CreateScope())
{
var db=scope.ServiceProvider.GetRequiredService();
尝试
{                    
db.Database.Migrate();
}
捕获(例外e)
{
控制台写入线(e.Message);
}
}
host.Run();
}

确保数据项目设置为启动项目,并在package manager控制台中尝试更新数据库-p dataThank you,但我尝试在linux服务器上进行迁移,因此我没有package manager控制台