C# 如何首先在EF代码中实现这个关系模型?

C# 如何首先在EF代码中实现这个关系模型?,c#,entity-framework,C#,Entity Framework,我真的很想在我的项目中使用EF,但如果我想在DB中实现这一点,我很难弄清楚如何使用代码优先的方法: Posts ============================================================================ Id :int | Title :string | Author :string | Date : datetime| Content :string ========================================

我真的很想在我的项目中使用EF,但如果我想在DB中实现这一点,我很难弄清楚如何使用代码优先的方法:

Posts
============================================================================
Id :int | Title :string | Author :string | Date : datetime| Content :string 
============================================================================

Tags
=============
Name :string
=============

PostTags
===============================
Post_Id :int | Tag_Name :string
===============================

ReadBy
===============================
Post_Id :int | Reader_Name :string
===============================
有人能帮我吗?我应该如何使用代码优先EF来完成这项工作

我不知道如何创建
标记
表,因为它只有基本类型,我不知道如何为
PostTags
ReadBy
定义那些M2M映射

我知道关系设计非常简单,因为它主要使用原始数据类型,在其他情况下,我只需要手动创建DAL,但我想先使用EF代码,因为我知道将来在应用程序中添加更多功能时,我会从中受益


非常感谢您的帮助

这将是我解决您问题的方法:

public class Post
{
    public int Id { get; set; }
    public string Title { get; set; }
    public string Author { get; set; }
    public DateTime Date { get; set; }
    public string Content { get; set; }
    public virtual List<Tag> Tags { get; set; }
    public virtual List<Reader> Readers { get; set; }
}

public class Tag
{
    public int Id { get; set; }
    public string Name { get; set; }
    public virtual List<Post> Posts { get; set; }
}

public class Reader
{
    public int Id { get; set; }
    public int Name { get; set; }
    public virtual List<Post> Posts { get; set; }
}
公共类职位
{
公共int Id{get;set;}
公共字符串标题{get;set;}
公共字符串作者{get;set;}
公共日期时间日期{get;set;}
公共字符串内容{get;set;}
公共虚拟列表标记{get;set;}
公共虚拟列表读取器{get;set;}
}
公共类标签
{
公共int Id{get;set;}
公共字符串名称{get;set;}
公共虚拟列表发布{get;set;}
}
公共类阅读器
{
公共int Id{get;set;}
公共int名称{get;set;}
公共虚拟列表发布{get;set;}
}
最终结果: