Qualcuno sa se è possibile stabilire se una proprietà specifica su un oggetto è sporca (ovvero la proprietà è diversa da quella memorizzata nel DB) utilizzando NHibernate?Posso sapere se una proprietà è sporca usando Nhibernate?
Lo sfondo di questa domanda è che avrò un oggetto con un (relativamente) grande numero di proprietà su di esso. Devo essere in grado di passare un parametro (stringa) a una funzione che determinerà se quella specifica proprietà è cambiata durante la vita della pagina.
Se è necessario, è possibile creare una copia dell'oggetto e utilizzare la riflessione alla fine del ciclo di vita della pagina per verificare il valore, ma sono riluttante a farlo. Sarebbe bello se NHibernate potesse semplicemente dirmi se una proprietà era sporca.
Grazie
Il post valuta in modo non corretto per lo stato sporco, passare alla: Int32 [] = dirtyProps oldState.Select ((o, i) => Object.equalsQ (oldState [i], currentState [i])? -1: i) .Where (x => x> = 0) .ToArray(). In realtà questo controllo sporco è disponibile dal persister tramite IEntityPersister.FindDirty. Esempio: http://stackoverflow.com/questions/1690755/in-nhibernate-my-check-if-entity-is-dirty-fails – Llyle