Question

Nous essayons de créer une EntityConnection de manière dynamique afin que différents utilisateurs se connectent à différentes bases de données réseau déterminées au moment de l'exécution.Pour ce faire, nous testons le code trouvé ici : http://msdn.microsoft.com/en-us/library/bb738533.aspx.Nous avons implémenté ceci ci-dessous :

' 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

Lorsque conn.Open() est exécuté, une erreur est générée :"Impossible de charger la ressource de métadonnées spécifiée." Cela semble indiquer qu'un ou plusieurs des références "res: // * ..." sont erronées.J'ai confirmé que le projet contient bien ces fichiers (sous le dossier bin/debug).Que nous manque-t-il ici ? Des idées ?

Merci

Était-ce utile?

La solution

Oui le res:// une partie est fausse.Regardez les noms des ressources dans Reflector (à l'intérieur de l'assembly), et non dans votre système de fichiers local, pour voir ce qu'ils devraient être.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top