Entity Framework не выполняет код сначала и выдает исключение DbUpdateException из-за отсутствия таблицы - PullRequest
0 голосов
/ 09 мая 2018

Это модель, которую я хочу добавить в свою базу данных:

[Table("Posts")]
public class PostEntity
{
    [Key]
    [Column("PostId")]
    public Guid PostId { get; set; }

    [Column("PostContent")]
    public string PostContent { get; set; }

    [ForeignKey("User")]
    public string UserId { get; set; }

    [Column("User")]
    public ApplicationUser User { get; set; }
}

и это код для этого:

var postEntity = new PostEntity()
{
    PostContent = model.PostContent,
    PostId = Guid.NewGuid(),
    UserId = user.Id
};

try
{
    m_accountDbContext.PostDbCtx.Add(postEntity);
    await m_accountDbContext.SaveChangesAsync();
}
catch(ModelValidationException e )
{
    Console.WriteLine(e);
}
catch(InvalidOperationException e)
{
    Console.WriteLine(e);
}
catch(DbUpdateException e)
{
    Console.WriteLine(e);
}

return true;

В базе данных на данный момент нет таблицы Posts. До сих пор всякий раз, когда я работал с EF, code-first заботился о создании базы данных.

Однако, в этом случае, когда я запускаю код, выдается DbUpdateException с ошибкой внутри, которая выглядит как

Неверный объект: dbo.Posts

Поэтому я делаю вывод, что он не может найти таблицу. Однако, я ожидаю, что это создаст это для меня.

Я что-то пропустил?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...