… ovvero: come al solito bisogna lottare, ma va.

In questo weekend ho visto qualche screencast del bravissimo Marco De Sanctis su entity framework e preso dall’entusiasmo ho voluto provarlo sul mio sito hostato da Aruba.

Seguendo le indicazioni creo una semplice tabellina sul mio db sql2008, creo l’entity model, faccio una paginetta per testare un inserimento/lettura, pubblico e BOOOM! :)

entity framework Invalid object name ‘.dbo …

Mai che ci sia una cosa semplice su Aruba…

 

Cmq ecco come ho risolto i miei problemini:

1) Il file .edmx deve essere messo nella root del progetto

1) Mettere “Copy to Output Directory” la proprietà “Metadata Artifact Processing” nel designer del file .edmx (non deve essere embedded)

2) La stringa di connessione deve essere tipo questa:
<add name="EFData" connectionString="metadata=~/bin/EFData.csdl|~/bin/EFData.ssdl|~/bin/EFData.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=**;Initial Catalog=**;Persist Security Info=True;User ID=**;Password=**;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" />

3) Prima di pubblicare cambiare lo schema da “dbo” a “MSSql123**” (il vostro login) nel file “.ssdl” (lo trovate nella bin)

4) Se usate sql2008 come me allora sappiate che c’è da cambiare sempre nel file “.ssdl” il “ProviderManifestToken” e settarlo a 2005