Come posso sapere se un determinato oggetto Linq-to-Sql è collegato a un datacontext?
-
20-08-2019 - |
Domanda
Uso linq 2 sql per il mio ORM.
Per motivi di prestazioni, ne serializzo alcuni e li lancio in memcached.
Quando sono deserializzati, ovviamente non sono collegati a un datacontext, il che va bene al 100%, poiché vengono utilizzati solo per la lettura in quegli scenari.
Per motivi di sanità mentale, tuttavia, vorrei essere in grado di dire se un determinato oggetto è collegato a un datacontext (recuperato dal db) o meno (recuperato da memcached).
Qualche idea?
Grazie.
Soluzione
Usa GetOriginalEntityState. Ecco un test.
Customer cust = new Customer(); ctx.Customers.Attach(cust); Customer orig = ctx.Customers.GetOriginalEntityState(cust); //test if orig is null
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow