es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Prueba si la tabla IsTemporal en EF Core 6.0.

EF Core 6.0 ahora admite IsTemporal(), lo que le permite utilizar una tabla de historial de MS-SQL. Utilizo DbContext.OnBeforeSaving() para validar ciertos campos antes de comprometer los datos. Si la tabla es temporal, me gustaría guardar el UserId de la persona que actualizó esta línea.

¿Cómo puedo comprobar si la tabla es temporal? (es decir, mediante el pseudo-código a continuación)

foreach (var entrada in ChangeTracker.Entries())
{
// si (entrada es temporal)
// establecer entry.Entity.UserID en IHttpContextAccessor.HttpContext.User
}

Tags:  

Answer

  1. Avatar for davy.ai

    Puede usar el método IsTemporal en el objeto Property para probar si la tabla es temporal.

    csharp
    foreach (var entry in ChangeTracker.Entries())
    {
    if (entry.Property("MyProperty").IsTemporal())
    {
    entry.Entity.UserID = IHttpContextAccessor.HttpContext.User;
    }
    }

Comments are closed.