当前位置 : 主页 > 网页制作 > html >

.netcore EFcore的 基础理解

来源:互联网 收集:自由互联 发布时间:2021-06-12
1.新建.netCore Web项目。这时候,还与EF没啥关系。 2.然后添加类 Bolg.和 Post 参考这里 https://docs.microsoft.com/en-us/ef/core/modeling/relational/fk-constraints public class Blog{ public int BlogId { get ; set ; } p

1.新建.netCore Web项目。这时候,还与EF没啥关系。

2.然后添加类 Bolg.和 Post   参考这里  https://docs.microsoft.com/en-us/ef/core/modeling/relational/fk-constraints

public class Blog
{
    public int BlogId { get; set; }
    public string Url { get; set; }

    public List<Post> Posts { get; set; }
}

public class Post
{
    public int PostId { get; set; }
    public string Title { get; set; }
    public string Content { get; set; }

    public int BlogId { get; set; }
    public Blog Blog { get; set; }
}

3.新增控制器Blogs。使用 “”其操作使用EF 的控制器“。

这时候会从Nuget 上安装EF 相关的类库。

还会生成 这个上下文类

public class MyEFTestContext : DbContext
    {
        public MyEFTestContext (DbContextOptions<MyEFTestContext> options)
            : base(options)
        {
        }

        public DbSet<MyEFTest.Models.Blog> Blog { get; set; }
    }

4.执行 add-migration. 会生成migration 文件夹。下面会有迁移文件和 snap.cs 文件。

可以看到。在迁移文件中。

 modelBuilder.Entity("MyEFTest.Models.Post", b =>
                {
                    b.HasOne("MyEFTest.Models.Blog", "Blog")
                        .WithMany("Posts")
                        .HasForeignKey("BlogId")
                        .OnDelete(DeleteBehavior.Cascade);
                });

这里指定了外键关系

网友评论