salut tout le monde,
Je viens de lire l'excellent article de morpheus
ftp://ftp-developpez.com/morpheus/ar...chitecture.pdf
Et il y a quelque chose que je n arrive pas a comprendre;
Il introduit la couche Data Access Layer, et fait une classe pour récupérer les clients avec la méthode suivante .
Je me pose la question de comment faire si je dois faire deux opérations différentes, par exemple récupérer tous les clients et récupérer les clients dont le nom est Dupont.
Code : 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 private List<Client> GetClientsFromDB(DbConnection cnx) { List<Client> clients = new List<Client>(); using (DbCommand cmd = cnx.CreateCommand()) { cmd.CommandType = System.Data.CommandType.Text; cmd.CommandText = "SELECT TOP 10 * FROM Person.Contact"; using (DbDataReader reader = cmd.ExecuteReader()) { while (reader.Read()) { Client client = new Client(); client.ClientID = reader["ContactID"] == DBNull.Value ? default(int) : int.Parse(reader["ContactID"].ToString()); client.ClientLastName = reader["LastName"] == DBNull.Value ? default(string) : reader["LastName"].ToString(); client.ClientFirstName = reader["FirstName"] == DBNull.Value ? default(string) : reader["FirstName"].ToString(); clients.Add(client); } } } return clients; }
Dois je faire deux classes pour chaque cas ?
La manière la plus simple sera de faire deux requêtes différentes plutôt que d'intégrer le filtre dans le code de la couche.
Merci pour ceux qui pourront m'éclairer sur une solution.
Partager