Bonjour,
Je suis en train de réaliser une application cliente en WPF.
J'ai plusieurs contraintes techniques:
- Framework .NET 3.5 sans le SP1
- Base de données SQLite
Étant novice en la matière je voudrais savoir quoi utiliser pour requêter ma base de données facilement. A savoir que :
- Entity Framework (LinqToEntites / EDMX) : impossible seulement à partir du 3.5 SP
- LinqToSQL : compatible seulement avec SQL Server.
J'ai trouvé le provider suivant:
Sytem.Data.SQLite
Pour l'instant voilà comment je l'utilise:
Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 public List<UserEntity> GetAll() { DatabaseSqlite db = new DatabaseSqlite(); db.Query("select * from utilisateur ORDER BY nom, prenom"); return db.Read().Select(CreateUser).ToList(); } private static UserEntity CreateUser(SQLiteDataReader row) { return (row==null) ?null :new UserEntity(){ Id = long.Parse(row["id_utilisateur"].ToString()), Lastname = row["nom"].ToString(), Firstname = row["prenom"].ToString() } ; }
Et une petite classe pour me connecter à la base et effectuer les requêtes.
Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 public class DatabaseSqlite { private SQLiteConnection _Connection = null; private SQLiteCommand _Command = null; public DatabaseSqlite() { _Connection = new SQLiteConnection(@"Data Source=chemin_vers_le_fichier.db3"); _Connection.Open(); } public void Query(string query) { _Command = new SQLiteCommand(_Connection); _Command.CommandText = query; } public IEnumerable<SQLiteDataReader> Read() { SQLiteDataReader reader = _Command.ExecuteReader(); while(reader.Read()){ yield return reader; } reader.Close(); } }
Ma demande:
1) Existe il une méthode plus simple ou plus "friendly" pour le développer?
2) J'ai vu qu'il y a System.Data.SQLite.Linq mais je n'ai pas trouvé d'exemple quand à son utilisation.
Bref, quelques conseils sont les bienvenus.
Merci d'avance.
Partager