Problema dei metadati dell'entità di entità-framework
-
15-09-2020 - |
Domanda
Stiamo cercando di costruire un entità di conflitto dinamicamente in modo che diversi utenti siano connessi a database differnet determinati in fase di esecuzione.Per fare questo stiamo testando il codice trovato qui: http:// msdn.microsoft.com / IT-US / Library / BB738533.aspx .Abbiamo implementato questo sotto:
' Specify the provider name, server and database.
Dim providerName As String = "System.Data.SqlClient"
Dim serverName As String = "OurDBServerName"
Dim databaseName As String = "OurDBName"
' Initialize the connection string builder for the
' underlying provider.
Dim sqlBuilder As New SqlConnectionStringBuilder
' Set the properties for the data source.
sqlBuilder.DataSource = serverName
sqlBuilder.InitialCatalog = databaseName
sqlBuilder.IntegratedSecurity = False
sqlBuilder.UserID = "OurAppUserName"
sqlBuilder.Password = "OurPassword"
' Build the SqlConnection connection string.
Dim providerString As String = sqlBuilder.ToString
' Initialize the EntityConnectionStringBuilder.
Dim entityBuilder As New EntityConnectionStringBuilder
'Set the provider name.
entityBuilder.Provider = providerName
' Set the provider-specific connection string.
entityBuilder.ProviderConnectionString = providerString
' Set the Metadata location to the current directory.
entityBuilder.Metadata = "res://*/NotaModel.csdl|" & _
"res://*/NotaModel.ssdl|" & _
"res://*/NotaModel.msl"
Console.WriteLine(entityBuilder.ToString)
Using conn As EntityConnection = New EntityConnection(entityBuilder.ToString)
conn.Open()
Console.WriteLine("Just testing the connection.")
conn.Close()
End Using
.
Quando viene eseguito il conn.OPEN () viene eseguito un errore: "Impossibile caricare la risorsa dei metadati specificata."Sembra indicare che uno o più dei riferimenti "RES: // * ..." è sbagliato.Ho confermato che il progetto contiene effettivamente questi file (sotto la cartella Bin / Debug).Cosa ci mancano qui - Qualche idea?
Grazie
Soluzione
Sì, la parte res://
è sbagliata.Guarda i nomi delle risorse nel riflettore (all'interno del gruppo), non sul tuo filesystem locale, per vedere cosa dovrebbero essere.