AspNetUsers作为另一个表中的外键

时间:2018-04-12 12:04:33

标签: entity-framework asp.net-mvc-3 authentication ef-code-first asp.net-identity

现在我正在建立一个迷你博客。当用户创建帖子时我想从post表中的AspNetUsers插入用户ID作为外键 这里是帖子模型,所以任何人都可以告诉我实现它的步骤。

public class Post
{
  [Required]
  public int Id { get; set; }

  [Required]
  public string Title { get; set; }

  [Required]
  public string Content { get; set; }

  [Required]
  public string Path { get; set; }

  [Required]
  public DateTime PostDate { get; set; }

  public ApplicationUser User { get; set; }

  public IEnumerable<Comment> Comments { get; set; }
}

1 个答案:

答案 0 :(得分:1)

您必须使用以下代码才能将AspNetUsersId用作外键。如果您不想让[Required]可以为空,则可以使用AspNetUsersId

public AspNetUsers User { get; set; }
[ForeignKey("AspNetUsersId")]
[Required]
public int AspNetUsersId { get; set; }

是的,当您在AspNetUsersId表中插入记录时,必须手动设置Post

让我们说你有Post课的对象为obj。因此,如果AspNetUsers表PK为Id,则必须在方法中编写以下代码。

obj.AspNetUsersId = AspNetUsers.Id;