LINQ to SQL: dalla Beta 2 alla RTM

Leggete questo post, solo se avete familiarità con LINQ to SQL e se avete già scritto del codice con la beta 2 di VS 2008. Ci sono alcuni piccoli cambiamenti nella RTM che richiedeono un po' d'attenzione. Il tutto è ben descritto nel documento che potete scaricare al link sottostante.

Cerco di elencare brevemente quanto raccontato nel documento, così che possiate decidere se scaricarlo o meno. Il documento è ben fatto ed oltre a indicare quali sono i cambiamenti che hanno impatto sul codice scritto con la beta2, ne spiega anche le motivazioni, che vanno nell'ottica di chiarire meglio significato, semantica delle operazioni e di evitare situazioni inconsistenti.

Metodi della Beta2 che hanno cambiato nome/comportamento/semantica

  • Table<T>.Add e .Remove
  • Tabble<T>.Attach
  • OnValidate
  • OnCreated
  • Visual Basic uso di Nothing per il confronto di stringhe in LINQ
  • DataContext con la stringa di connessione che contiene una password
  • SQL Metal e O/R Designer e il codice generato con XML columns e stringhe in VB.

Inoltre non è più ammesso in una Select istanziare una classe di un'entità utlizzata, ad esempio .... Select new Customer {...} , bisognerà ora utilizzare un tipo anonimo Select new {...}  

Download LINQ to SQL from Beta 2 to RTM breaking changes