Bonjour,
j'ai un petit souci qui m'embête beaucoup.
Je trouve que les accès à ma base de données sont beaucoup trop lent.
L'application que j'ai développé utilise des DataSet typés et des TableAdapter.
Par exemple, pour obtenir la liste des clients j'appelle la méthode LoadClient définit comme le code qui suit.
Il n'y a au total que 31 clients et la requête prend 7 secondes en moyenne, ce que je trouve vraiment trop long, je pense que vous serez d'accord avec moi.
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
29
30
31
32
33
34
35
36
37 /// <summary> /// Représente le Table Adapter du client /// </summary> private ClientDataSetTableAdapters.ClientsTableAdapter m_ClientsADP; /// <summary> /// Constructeur par défaut /// </summary> public ClientDALC() { // Initialisation du Table Adapter gérant les accès à la base de données // pour les clients m_ClientsADP = new ClientDataSetTableAdapters.ClientsTableAdapter(); } ClientDataSet IClientDataAccess.LoadClient() { // Initialisation d'un nouveau DataSet // Ce DataSet sera retourné ClientDataSet dsClient = new ClientDataSet(); // Obtient le client représenté par son id // Utilisation de ClientsTableAdapter // Utilisation de la requête associée pour obtenir le client par son Identifiant log.Debug("Chargement depuis la base de données de tous les clients"); // Requête m_ClientsADP.Fill(dsClient.Clients); log.Debug("Clients chargés"); // Retourne le DataSet typé pour la recherche des clients return dsClient; } }
Voici la chaîne de connection du fichier app.config:
Merci pour votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <connectionStrings> <add name="DataAccessLayer.Properties.Settings.DB_KINEConnectionString" connectionString="Data Source=SERVEUR;Initial Catalog=DB_KINE;Integrated Security=True;Persist Security Info=False" providerName="System.Data.SqlClient"/> </connectionStrings>
Que puis-je faire ?
Merci d'avance.
Partager