Я пытаюсь получить данные из двух разных таблиц, используя EF 6, это проект asp.net mvc 5 с использованием Identity 2.0, однако, когда я присоединяюсь к двум таблицам, я получаю сообщение об ошибке, что контексты обоих образований различны, однако это не так, вот мой код:Запросы Linq ссылаются на разные контексты, но на самом деле это не
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
public ApplicationDbContext()
: base("DefaultConnection", throwIfV1Schema: false)
{
}
public DbSet<UserAccountStatus> UserAccountStatuss { get; set;}
public static ApplicationDbContext Create()
{
return new ApplicationDbContext();
}
}
и вот мой LINQ запрос:
var result = (from user in DbContext.Users
join accountStatus in DbContext.UserAccountStatuss on user.Id equals accountStatus.UserId
where user.Email == email
select accountStatus.AccountEnabled).FirstOrDefault();
Мой DbContext недвижимость:
public ApplicationDbContext DbContext
{
get
{
return _dbContext ?? ApplicationDbContext.Create();
}
private set
{
_dbContext = value;
}
}
Точная ошибка:
Указанное выражение LINQ содержит ссылки на запросы, которые связаны с различными контекстами.
и это не является дубликат, я видел другие вопросы, в том пользователе на самом деле пытаемся разные контексты, но в моем случае я один.
Кажется, что ваш 'DBContext' получает экземпляр дважды. Можете ли вы проверить, как работает ваша логика создания экземпляров? –
@CamBruce опубликовано в вопросе –