5

Je dois me connecter à une base de données dans Sqlite donc j'ai téléchargé et installé System.Data.SQLite et avec le concepteur traîné toutes mes tables.ObjectContext ConnectionString Sqlite

Le concepteur a créé un fichier .cs avec

public class Entities : ObjectContext 

et 3 constructeurs:

1er

public Entities() : base("name=Entities", "Entities") 

celui-ci charge la chaîne de connexion de App.config et fonctionne très bien.

App.config

<connectionStrings> 
    <add name="Entities" connectionString="metadata=res://*/Db.TracModel.csdl|res://*/Db.TracModel.ssdl|res://*/Db.TracModel.msl;provider=System.Data.SQLite;provider connection string=&quot;data source=C:\Users\Filipe\Desktop\trac.db&quot;" providerName="System.Data.EntityClient" /> 
</connectionStrings> 

2ème

public Entities(string connectionString) : base(connectionString, "Entities") 

public Entities(EntityConnection connection) : base(connection, "Entities") 

est ici le problème, j'ai déjà essayé n configuration, déjà utilisé EntityConnectionStringBuilder pour rendre la chaîne de connexion sans succès.

Pouvez-vous me diriger dans la bonne direction?

EDIT (1)

je peux faire mes requêtes si j'utilise constructeur de parameterless mais je dois changer la chaîne de connexion, je ne peux pas utiliser celui de mon app.config.

Comment puis-je construire une chaîne de connexion valide ?!

+1

votre question n'est pas claire. –

Répondre

7

Je l'ai trouvé =)

si vous utilisez le EntityConnectionStringBuilder pour spécifier le Metadata et le Provider et utiliser le SqlConnectionStringBuilder pour construire la chaîne de connexion fournisseur et définissez le DataSource à votre DB. Vous pouvez connecter =)

var con = new EntityConnectionStringBuilder() 
    { 
    Metadata = @"res://*/Db.TracModel.csdl|res://*/Db.TracModel.ssdl|res://*/Db.TracModel.msl", 
    Provider = @"System.Data.SQLite", 
    ProviderConnectionString = new SqlConnectionStringBuilder() 
     { 
     DataSource = db, 
     }.ConnectionString, 
    }; 

connection = con.ConnectionString; 
Questions connexes