Ho impostato il livello di ibernazione del registro su TRACE e ho riscontrato il problema. In realtà era un errore di mappatura/logica/database. La chiave primaria consisteva in due colonne (secondo la classe di entità) e una di queste colonne era nullable. Tuttavia una chiave primaria non può mai essere nullable. Pertanto l'ibernazione ha sempre restituito null.