entity-framework – 如何告诉UserManager.FindByNameAsync包含
发布时间:2020-12-16 06:39:26 所属栏目:asp.Net 来源:网络整理
导读:我使用ASP.NET Identity 2.2.0与ASP.NET MVC 5.2.3和Entity Framework 6.1.2. 我使用带有Code First的ASP.NET Identity将一个新属性及其相应的表添加到我的数据库中,如下所示: public class ApplicationUser{ [ForeignKey("UserTypeId")] public UserType T
我使用ASP.NET Identity 2.2.0与ASP.NET MVC 5.2.3和Entity Framework 6.1.2.
我使用带有Code First的ASP.NET Identity将一个新属性及其相应的表添加到我的数据库中,如下所示: public class ApplicationUser { [ForeignKey("UserTypeId")] public UserType Type { get; set;} public int UserTypeId { get; set;} } public class UserType { [Key] public int Id { get; set;} public string Name { get; set; } } 现在,从某些动作开始,当我打电话时: var user = UserManager.FindByNameAsync(userName); 它确实为用户提供了正确的UserTypeId,因为它是一个原语,但它不会获得ApplicationUser类的UserType属性. 如果我没有使用这种抽象,我会调用LoadProperty< T>或实体框架中的Include方法,以在ApplicationUser类中包含名为Type(类型为UserType)的导航属性或关系. 如何使用ASP.NET Identity的UserManager执行此操作?我怀疑唯一的方法是在我的自定义UserManager派生类中重写此方法并自己执行此操作? 解决方法
使用实体框架延迟加载,您需要确保将导航属性标记为虚拟.
public class ApplicationUser { [ForeignKey("UserTypeId")] public virtual UserType Type { get; set;} public int UserTypeId { get; set;} } 或者,如果您不能/不想使用延迟加载,那么您仍然可以像使用任何其他实体一样使用您的上下文: var user = context.Users.Include(u => u.Type).Single(u => u.UserName == userName); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – ASP.NET MVC 3中的OutputCache行为
- 如何重现由asp.net MVC默认成员资格创建的密码哈希
- asp.net-mvc – 上传图片 – 安全
- asp.net-mvc – 如何使用ASP.NET Web API的Ninject?
- asp.net-web-api – 如何在HttpReponseMessage上设置响应co
- asp.net-mvc – 如何使用ASP.NET MVC和表单身份验证创建单页
- ASP.NET中web.config文件的替代方法
- asp.net-mvc – MVC6剃须刀如何检测调试模式?
- ASP.NET网站或Web项目
- asp.net-mvc – 服务层中的AutoMapper
推荐文章
站长推荐
- 如何使用Fluent Nhibernate中的Automapping进行O
- asp.net – 在asp:GridView中插入隐藏列但仍然可
- ASP.NET MVC 3 – 处理多个域并共享单个代码库
- asp-classic – ASP Classic中的溢出
- asp.net-mvc-3 – 服务器端命令行
- asp.net-web-api – 在Azure Service Fabric中,无
- asp.net – 设置asp:DropDownList的html’name’
- asp.net – 在服务器端管理不断增长的CSS样式表
- asp.net-mvc – 用于字符串的ASP.NET MVC显示模板
- 通过代码实现 OutOfMemory
热点阅读