我的AppUser表继承自IdentityUser表。
我从DBDtext继承IdentityDbContext以在一个数据库中创建所有表
public class MyCustomDBContext : IdentityDbContext<AppUser>
{
public MyCustomDBContext(DbContextOptions<MyCustomDBContext> options)
: base(options) { }
public DbSet<Category> Categories { get; set; }
public DbSet<Article> Articles { get; set; }
public DbSet<Bookmark> Bookmarks { get; set; }
}
当我尝试为该代码等特定文章选择书签时,用户名始终为 null ?
from a in context.Bookmarks
where a.ArticleID == articleID
select new Bookmark
{
UserID = a.UserID,
BookmarkDate = a.BookmarkDate,
appUser = new AppUser
{
UserName = a.appUser.UserName
}
}
我认为因为AppUser表来自继承的上下文IdentityDbContext,
那么,我该怎么办
如果我尝试在MyCustomDBContext中定义AppUser表的属性,这将导致隐藏到父IdentityDbContext中的User表
public DbSet<AppUser> muUsers { get; set; }
答案 0 :(得分:0)
这是我的错误,
我在UserID上使用ForeignKey属性而不是AppUser:
[ForeignKey("UserID")]
public string UserID { get; set; }
而不是:
[ForeignKey("UserID")]
public AppUser appUser { get; set; }
我调整它并且工作正常