Это модель, которую я хочу добавить в свою базу данных:
[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
Поэтому я делаю вывод, что он не может найти таблицу. Однако, я ожидаю, что это создаст это для меня.
Я что-то пропустил?