Bonjour,
Je suis entrain de developper une application qui permet la recherche d'employés en fonction de quelques critères :
Nom de la personne
le service ou elle travaille
la fonction qu'elle effectue
je travaille en C# dotnet, et je trouve une difficulté à trouver un code bien fait (court et bien optimisé) pour ma recherche.
voilà le mien :
voilà ma classe ou j'ai mis la création de connexion Sql avec le data adapter et le dataset :
et voilà mon code pour la recherche, qui s'effectue avec les 3 parametres :
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
26 class Class_g { public static DataSet GetData(String StringConnexion, String Query, CommandType Type, SqlParameter[] Params) { DataSet DS = new DataSet(); try { SqlConnection SC = new SqlConnection(StringConnexion); SqlCommand SCm = new SqlCommand(Query, SC); if (Params != null) SCm.Parameters.AddRange(Params); SqlDataAdapter SAd = new SqlDataAdapter(SCm); SAd.Fill(DS); } catch (Exception ex) { MessageBox.Show(ex.Message); } return DS; } }
ce code m'oblige à mettre les 3 critères pour pouvoir effectuer ma recherche, moi je veux un code qui si je rempli juste l'un de ses critère, ma recherche s'effectue :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 string Connexion = "Data Source=TIMA;Initial Catalog=HOPITAL;Integrated Security=True"; string Query = "select * from personnel where nom = @paramN and service = @paramS and fonction = @paramF"; SqlParameter[] Params = { new SqlParameter ("@paramN",textBox1.Text), new SqlParameter ("@paramS",comboBox1.Text), new SqlParameter ("@paramF",comboBox2.Text), }; dataGridView1.DataSource = Class_g.GetData(Connexion,Query,CommandType.Text,Params).Tables[0];
par exemple :
-mettre juste le nom de la personne .
mettre un nom + un service sans preciser la fonction .
j'espère que j'etais claire,
toute l'après midi j'ai galérer avec, mais sans resultat, quelqu'un peut m'aider Svp !?
Merci beucoup d'avance
Partager