【发布时间】:2017-08-08 14:28:05
【问题描述】:
我想使用实体框架 ASP.Net 在代码优先数据库中建立多对多关系,它将来自同一个表。
我有用户,我想让每个用户都有自己的朋友(用户也是),但我无法在代码优先数据库中建立这样的关系。
这是我的课。
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Data;
using System.Data.Entity;
using System.Linq;
using System.Net;
using System.Web;
namespace LMS.Model.Entites
{
public class user
{
[Key]
public int ID { get; set; }
[Required(ErrorMessage ="Please Insert your name")]
public string Name { get; set; }
[Required(ErrorMessage ="Please insert a valid username")]
public string User_Name { get; set; }
public string Adress { get; set; }
[DataType(DataType.Date)]
public string Birthday { get; set; }
[Required]
[EmailAddress]
public string E_Mail { get; set; }
[Required(ErrorMessage = "Please insert a valid password")]
[MinLength(9)]
[DataType(DataType.Password)]
public string Password { get; set; }
public string Authority { get; set; }
public virtual ICollection<user_Friends> friends { get; set; }
}
}
我尝试创建一个新类作为新表来建立多对多关系,但失败了。
using LMS.Model.Entites;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace LMS.Model
{
public class user_Friends
{
[Key]
public virtual user USER1 { get; set; }
[ForeignKey("USER1")]
public virtual int USER1_ID { get; set; }
[Key]
public user USER2 { get; set; }
[ForeignKey("USER2")]
public int USER2_ID { get; set; }
}
}
【问题讨论】:
-
'It failed' 对问题的描述很差。你有什么具体的错误吗?
标签: entity-framework ef-code-first