7

ho creare un progetto di prova per testare le mie domande, ogni cosa va bene, tranne quando provo a testare un metodo che usa Entity Connection, ottengo la seguente eccezione:CodeFirst: La connessione denominata specificata è o non trovato nella configurazione

The specified named connection is either not found in the configuration, not intended to be used with the EntityClient provider, or not valid. 

enter image description here


mia stringa di connessione nel app.config nel TestQuery Projec t, che è il mio progetto di avvio è:

<connectionStrings> 
    <add name="DataLayer.Context" connectionString="Data Source=.;Initial Catalog=TestQ;Integrated Security=True" providerName="System.Data.SqlClient"/> 
</connectionStrings> 

Tutti i metodi che utilizzano LINQ to entità funziona bene e porta i dati tranne questo?

+2

'.' non è un valore valido per' Origine dati'? – masa

+0

@masa: questo è il mio db locale !! –

+0

Si prega di copiare e incollare il codice anziché un'immagine. –

risposta

5

Questo non è il modo per eseguire un comando Entity SQL. Si dovrebbe fare questo, invece:

// If you have a DbContext instance: 
var objectContext = ((IObjectContextAdapter)dbContext).ObjectContext; 
var query = objectContext.CreateQuery<Crop>(eSQL); 
var result = query.ToList(); 
+0

Grazie mille, L'eccezione nell'iniziazione della connessione, non nella query stessa. Potrebbe dare un'occhiata alla stringa di connessione per favore? –

+0

Non sono convinto. Hai provato il mio codice? –

+0

Questo funziona per me, ma non è quello che stavo chiedendo, chiedo di eseguire "sql nativo con framework di entità" come "ADO.net", voglio in questo caso parlare direttamente con sql client, cerco su Internet e trovo questo metodo ma ottengo l'eccezione di cui sopra –

0

tenta di rinominare voi nome di connessione, in caso a questo: "TestConn"

using(var con = new EntityConnection("name=TestConn")) 

Un'altra cosa da provare è quello di ottenere che si stringa di connessione da app.config e quindi passarlo nel costruttore di EntityConnection.

string cs = ConfigurationManager.ConnectionStrings["TestConn"].ConnectionString 
var eConnection = new EntityConnection(cs);