实体框架核心:生成实体的“创建”和“更新”脚本

时间:2020-03-18 12:38:49

标签: sql entity-framework entity-framework-core

我需要在Entity Framework Core中生成某些数据库对象的“创建”和“更新”脚本

    public class Cat
    {
        public int CatId { get; set; }
        public string Name { get; set; }
        public int Age { get; set; }
    }
    public class CatsContext : DbContext
    {
        public DbSet<Cat> Cats { get; set; }
    }

    public class Program
    {
        public void Main()
        {
            using (var context = new CatsContext())
            {
                var cat = new Cat {Name = "Bob", Age = 15};
                context.Add(cat);
                context.SaveChanges();
            }
            using (var context = new CatsContext())
            {
                var cat =  context.Set<Cat>().First(); //suppose cat != null, and CatId = 123
                var insertScript = GetInsertScript(); // something like INSERT INTO [Cats] (Name, Age) VALUES ('Bob', 15)
                var updateScript = GetUpdateScript(); // something like UPDATE [Cats] SET Name = 'Bob', Age = 15 WHERE CatId = 123
            }
        }
    }

如何在代码中生成此脚本?也许EF有一些本地工具,还是我应该使用边库?

我了解迁移和命令“ dotnet ef迁移脚本”,但是我不需要创建迁移,只需创建和更新数据库中存在的某些对象的脚本

0 个答案:

没有答案