Entity Framework 6, MVC5, ASP Identity 2.0.Невозможно вставить значение NULL в столбец «Дискриминатор», таблица «... AspNetUsers»; столбец не допускает нулей. INSERT не работает
Я новичок в инфраструктуре Entity и ASP Identity. Я создал базу данных с использованием кода First, следуя этим инструкциям: http://dotnetcodr.com/2014/07/10/introduction-to-entityframework-6-part-1-the-basics-of-code-first/ и применяя их в соответствии с моим собственным проектом.
Таблицы были созданы, все в порядке. Но когда я пытаюсь зарегистрировать нового пользователя, возникает исключение: «Entity Framework 6, ASP Identity. Невозможно вставить значение NULL в столбец« Дискриминатор », таблица« ... AspNetUsers », столбец не допускает нулей. INSERT не может «. Вызывается методом CreateAsync в пределах AccountController
линии 153: {
Строка 154: вар пользователь = новый ApplicationUser {UserName = model.Email, электронная почта = model.Email};
Строка 155: var result = wait UserManager.CreateAsync (пользователь, model.Password);
Line 156: если (result.Succeeded)
линии 157: {
Я даже не уверен, какая часть кода я должен вставить здесь.
Вот мой DbContext:
public class BulkMailerContext : IdentityDbContext<ApplicationUser>
{
public BulkMailerContext()
: base("BulkMailerContext", throwIfV1Schema: false)
{
}
public DbSet<Email> Emails { get; set; }
public DbSet<SubscriptionList> SubscriptionLists { get; set; }
public DbSet<Recipient> Recipients { get; set; }
}
А вот по умолчанию контекст Идентичность:
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
public ApplicationDbContext()
: base("BulkMailerContext", throwIfV1Schema: false)
{
}
public static ApplicationDbContext Create()
{
return new ApplicationDbContext();
}
}
Я не нашел много информации об этом исключением.
Этот пост http://forums.asp.net/t/1974183.aspx?Cannot+insert+the+value+NULL+into+column+Discriminator предлагает, чтобы проект имел класс, наследуемый от пользователя. У меня нет ничего подобного.
Это сообщение https://connect.microsoft.com/VisualStudio/feedback/details/800655/calling-new-user-with-4-5-1-does-not-pass-column-discriminator-required-in-aspnetusers-tables о проекте API Web и команды Microsoft сказал, что это ошибка, и они будут исправить это, насколько я понял
Это один Cannot insert the value NULL into column 'Discriminator' AspNetUsers Table не предлагает никакого решения
Это один Web API 2 cannot register user предполагает, что в Идентичность 2.0 это было исправлено, но у меня есть Идентичность 2,0 в настоящее время
У меня автоматическая миграция - отключена, если это имеет значение. Но я обновил db вручную из консоли PM с помощью команды update-database.
Любые предложения вообще приветствуются.
Ваш объект-получатель наследуется от ApplicationUser? – tmg
Нет, они разные. Я строю массовую рассылку. ApplicationUser - зарегистрированный пользователь. Получатель - это всего лишь таблица с адресами электронной почты и именами - для массовой рассылки. – Lera
Вы добавили какое-либо свойство в ApplicationUser? если да, можете ли вы вставить этот код тоже? – tmg