Come posso sapere se un determinato oggetto Linq-to-Sql è collegato a un datacontext?

StackOverflow https://stackoverflow.com/questions/840924

  •  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.

È stato utile?

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
scroll top