Cómo borrar todo el caché de segundo nivel en NHibernate

Deseo borrar todo el caché de segundo nivel en NHibernate a través del código. ¿Hay alguna manera de hacer esto que sea independiente del proveedor de caché que se esté usando? (Tenemos clientes que usan Memcache y Syscache dentro de la misma aplicación).

Deseamos borrar todo el caché debido a que pueden haberse producido cambios externos a la base de datos (y no tenemos garantías sobre qué tablas / entidades se vieron afectadas, por lo que debemos asumir lo peor).

Respuestas a la pregunta(1)

Su respuesta a la pregunta