Pregunta

¿Cómo puedo configurar NHibernate para que no almacene en caché un archivo?
Sé que puedo crear un método que haga un HSQL, pero ¿puedo a través de una configuración en el archivo <clase>.xml o el archivo xml de hibernación en sí para no almacenar en caché una propiedad?

¿Fue útil?

Solución

No puede establecer configuraciones de almacenamiento en caché secundarias a nivel de propiedad (hasta donde yo sé), pero puede ajustar individualmente la configuración de caché para cada entidad directamente en sus archivos XML.

Por ejemplo:

<?xml version="1.0" encoding="utf-8" ?>

<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">  

<class name="ClassName" table="Table">
   <cache usage="nonstrict-read-write" />

    <id name="Id" type="Int64" ...

Donde la propiedad de "uso" de la caché puede ser cualquiera de los siguientes valores:

  • leer escribir:asegura el aislamiento de lectura comprometida, garantiza que los datos sean consistentes pero no reduce el acceso a la base de datos tanto como los otros modos,
  • lectura-escritura no estricta:objetos con escrituras raras, ligera posibilidad de inconsistencia entre la base de datos y el caché,
  • solo lectura:para objetos de datos que nunca cambian, no hay posibilidad de inconsistencia.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top