EF Core и "The entity type 'EntityEntry<XXXXX>' was not found"
От: senglory  
Дата: 08.04.21 12:10
Оценка:
[Table("mailboxOut")]
public class DbMailOut
{
    [Key]
    [Column("Id")]
    [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
    public long Id { get; set; }

...

    [Column("WasSent")]
    public bool WasSent { get; set; } = false;
}

 

public class MailboxSvcDbContext : DbContext
{
    public DbSet<DbMail> Emails { get; set; }
    public DbSet<DbMailOut> EmailsOut { get; set; }

.....

var emails = ctx.EmailsOut.Where(x => !x.WasSent).ToList();
foreach (Management.DataLayer.Models.Mailbox.DbMailOut email in emails)
{
    ...
    email.WasSent = true;
    var emailAsEntiy = ctx.Entry(email);
    ctx.Update(emailAsEntiy);


На последней строке ловлю

System.InvalidOperationException: The entity type 'EntityEntry<DbMailOut>' was not found. Ensure that the entity type has been added to the model.
at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.StateManager.GetOrCreateEntry(Object entity)
at Microsoft.EntityFrameworkCore.DbContext.EntryWithoutDetectChanges[TEntity](TEntity entity)
at Microsoft.EntityFrameworkCore.DbContext.SetEntityState[TEntity](TEntity entity, EntityState entityState)
at Microsoft.EntityFrameworkCore.DbContext.Update[TEntity](TEntity entity)



Как так-то? DbMailOut вполне себе присутствует в модели в виде коллекции.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.