MVC用户身份

问题描述:

我已经通过外键链接我的成员应用用户表作为可以在模型MVC用户身份

public int MemberId { get; set; } 
    public int? UserId { get; set; } 
    [ForeignKey("UserId")] 
    public ApplicationUser User { get; set; } 

在Razor视图中找到我希望能够检索用户的详细信息,例如

@Model.User.FirstName 

,但我得到

System.NullReferenceException: Object reference not set to an instance of an object. 

不知道缺什么

+0

你应该申报'公共ApplicationUser User''virtual',即'公共虚拟ApplicationUser User' – nbokmans

您必须使您的UserId->用户关系虚拟。所以:

public int? UserId { get; set; } 
[ForeignKey("UserId")] 
public virtual ApplicationUser User { get; set; } 

添加virtual关键字的User的声明意味着这将是“懒加载”,这在非常短的条款意味着,只要你指的是User对象,它从数据库加载数据。

欲了解更多信息,请参阅https://msdn.microsoft.com/en-us/library/jj574232(v=vs.113).aspx#Anchor_1

+0

嗯感谢我越来越盲目时下.... – Diin