¿Cómo recargo un modelo en Entity Framework 7?

c# caching entity-framework entity-framework-core

Pregunta

He leído que en versiones anteriores del marco de la entidad, tenías acceso a un método Reload() , como este: Db.Entry<DatabaseModels.User>(_me).Reload();

Recibo un error al decir que EntityEntry no contiene una definición para 'Recargar'.

La razón por la que incluso quiero volver a cargar es desde el almacenamiento en caché (o lo que creo que es el almacenamiento en caché, y EF posiblemente no saber cuándo invalidar el caché).

Ejemplo:

Cargar usuarioA.
Crea un artículo que el usuario tendrá.
Trate de acceder a ese nuevo elemento a través de la relación en el usuario. userA.Items devuelve vacío
vuelva a obtener userA de la base de datos, y llame a la relación, y el elemento recién creado está en la asociación.

No estoy seguro de por qué está sucediendo, o si hay una manera de hacer que EF sea inteligente respecto a la invalidación de caché.

Respuesta popular

No es compatible, pero puede hacerlo a través del código, inspeccionando los metadatos. Vea aquí un ejemplo: https://weblogs.asp.net/ricardoperes/implementing-missing-features-in-entity-framework-core .




Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué