Я довольно новичок в Entity Framework 6, и поэтому может быть немного сложно решить этот вопрос, но по существу у меня есть конфигурация сущности, которая настроена так:Вставка объекта, который также отображается на вид
public class EntityExampleConfiguration : EntityTypeConfiguration<Entity>
{
public EntityExampleConfiguration()
{
Map(f =>
{
f.Properties(p => new
{
p.ID,
p.Status
p.Filed
p.By,
p.Title,
p.Waiver,
p.Notes,
p.Type
});
f.ToTable("EntityTable");
})
.Map(f =>
{
f.Properties(p => new
{
p.EntityID,
p.EntityName,
p.County,
p.Hash
});
f.ToTable("View");
});
HasKey(f => f.ID);
Property(f => f.ID).HasColumnName("ExID");
Property(f => f.EntityID).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Computed);
Property(f => f.EntityName).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Computed);
Property(f => f.County).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Computed);
Property(f => f.Hash).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Computed);
}
}
Если EntityExampleConfiguration
объединяет таблицу (EntityTable
) с целью (View
). Моя проблема (я считаю) является то, что из-за способа это установить, когда я пытаюсь вставить что-то он не вставляет:
Db.Entry(EntityObjectToInsert).State = EntityState.Added;
Db.Entity.Attach(EntityObjectToInsert);
Db.SaveChanges();
Я не получаю исключение или что-нибудь, и моя программа просто продолжает выполнение, но если я остановлюсь в точке останова после попытки сохранения, EntityObjectToInsert.ID
по-прежнему -1 (который по умолчанию при создании объекта), и это не в моей таблице.
Я подозреваю, что взгляд имеет какое-то отношение к этому, но не может найти никакой хорошей информации о том, как это могло бы быть, если оно даже есть. Я могу загружать данные в модель и обновлять, но вставка - это новая функция, которую я встраиваю в приложение, и это единственное, что не работает.