Não há suporte para classes genéricas como modelos no Entity Framework?
Estou tentando fazer algo assim:
public class TrackerContext : DbContext
{
public bool TrackNewValues { get; set; }
public TrackerContext(bool trackNewValues = false)
: base()
{
TrackNewValues = trackNewValues;
}
public TrackerContext(string connectinString, bool trackNewValues = false)
: base(connectinString)
{
TrackNewValues = trackNewValues;
}
public DbSet<AuditLog<string>> AuditLog { get; set; }
public DbSet<AuditLogChild> LogChildren { get; set; }
}
public class AuditLog<UserIdOrUserNameColumnType>
{
public AuditLog()
{
Children = new List<AuditLogChild>();
}
[Key]
public Guid AuditLogID { get; set; }
public UserIdOrUserNameColumnType UserId { get; set; }
[Required]
public DateTimeOffset EventDateUTC { get; set; }
}
Mas eu achoDbSet<AuditLog<string>>
não é suportado. Eu recebo este erro:
Informações adicionais: O tipo 'TrackerEnabledDbContext.AuditLog`1 [System.String]' não foi mapeado. Verifique se o tipo não foi explicitamente excluído usando o método Ignore ou a anotação de dados NotMappedAttribute. Verifique se o tipo foi definido como uma classe, não é primitivo ou genérico e não herda de EntityObject.
Existe alguma maneira de implementarpublic DbSet<AuditLog<string>> AuditLog { get; set; }
?