Je suis tring pour comprendre comment représenter les amitiés entre les utilisateurs avec Entity Framework (5) Code First. Mon idée initiale était de créer une classe Friendship qui contienne des références à deux instances User, afin que les amitiés soient représentées par des objets séparés.Comment dois-je modéliser d'abord les amitiés entre les utilisateurs avec le code EF?
public class Friendship
{
public virtual int Id { get; set; }
[Required]
public virtual UserProfile User1 { get; set; }
[Required]
public virtual UserProfile User2 { get; set; }
[Required]
public virtual DateTime Since { get; set; }
}
[Table("UserProfile")]
public class UserProfile
{
[Key]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public int UserId { get; set; }
[Required]
public string UserName { get; set; }
}
Lorsque vous essayez de créer la base de données via EF Migrations, cependant, je suis perplexe en raison d'une erreur SQL:
Introducing FOREIGN KEY constraint 'FK_dbo.Friendships_dbo.UserProfile_User2_UserId' on table 'Friendships' may cause cycles or multiple cascade paths. Specify ON DELETE NO ACTION or ON UPDATE NO ACTION, or modify other FOREIGN KEY constraints.
Suggestions quant à la façon de résoudre ce problème serait la bienvenue.