Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/276.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
C# asp.net mvc 4一对多关系(文章-标记)_C#_Asp.net Mvc_Asp.net Mvc 4_Relation - Fatal编程技术网

C# asp.net mvc 4一对多关系(文章-标记)

C# asp.net mvc 4一对多关系(文章-标记),c#,asp.net-mvc,asp.net-mvc-4,relation,C#,Asp.net Mvc,Asp.net Mvc 4,Relation,我正在尝试创建1-M关系(1-*),但我无法实现这一目标 我有文章模型和文章标签模型。从逻辑上讲,我希望有一篇文章与许多标签链接。以“非模型”的方式,我将根据这两个模型制作两个表格 public class Article { public int ArticleID { get; set; } public string Title { get; set; } public DateTime Date { get; set; } public string A

我正在尝试创建1-M关系(1-*),但我无法实现这一目标

我有文章模型和文章标签模型。从逻辑上讲,我希望有一篇文章与许多标签链接。以“非模型”的方式,我将根据这两个模型制作两个表格

public class Article
{ 
    public int ArticleID { get; set; }
    public string Title { get; set; }
    public DateTime Date { get; set; }
    public string Anotation { get; set; }
    public string Body { get; set; }
    public string SourceLink { get; set; }
    public virtual ICollection<ArticleTag> ArticleTags { get; set; }
}

public class ArticleTag
{
    public int ArticleID { get; set; } //FK of the Article
    public string TagName { get; set; }
}
公共类文章
{ 
公共int ArticleID{get;set;}
公共字符串标题{get;set;}
公共日期时间日期{get;set;}
公共字符串命名{get;set;}
公共字符串体{get;set;}
公共字符串SourceLink{get;set;}
公共虚拟ICollection ArticleTags{get;set;}
}
公共类ArticleTag
{
public int ArticleID{get;set;}//FK的项目
公共字符串标记名{get;set;}
}
我只见过有ID的实体,但在这里,我认为没有必要,因为ArticleTag表中的每一行都有自己的ID,不是吗


我该怎么写?Thx很多。

首先,您需要为ArticleTag和Article都有一个唯一的Id。然后需要将ArticleID插入到项目标记中,因为实体需要知道哪些ArticleTags属于项目。简而言之,它应该是这样的:

public class Article
{ 
public int ArticleID { get; set; }
public string Title { get; set; }
public DateTime Date { get; set; }
public string Anotation { get; set; }
}

public class ArticleTag
{
public int ArticleTagID { get; set; } 
public int ArticleID { get; set; } //This creates the link 1-M
public string TagName { get; set; }
}

首先,您需要为ArticleTag和Article都有一个唯一的Id。然后需要将ArticleID插入到项目标记中,因为实体需要知道哪些ArticleTags属于项目。简而言之,它应该是这样的:

public class Article
{ 
public int ArticleID { get; set; }
public string Title { get; set; }
public DateTime Date { get; set; }
public string Anotation { get; set; }
}

public class ArticleTag
{
public int ArticleTagID { get; set; } 
public int ArticleID { get; set; } //This creates the link 1-M
public string TagName { get; set; }
}