Bonsoir à tous,

J'ai une procédure de recherche sur un objet ayant 28 attributs. Et j'aimerais que quelque soi(t)(ent), la valeur de l'attribut entrée la recherche soit effectuée et le résultat affiché dans ma gridView. Je procédais par le passé en créant un formulaire spécial recherche. Ce qui est un peu lourd. Donc , j'ai souhaité faire la recherche sur la même des enregistrements, sachant bien que initialement la grille n'affiche que les dernières données enregistrées. Donc ma question est de savoir comment changer dynamiquement par le code, bien sûre, la méthode SELECT, de mon ObjectDataSource par le code de sorte qu'il alterne les résultats de ses opérations lorsqu'elles sont exécuter.

Mon appli est de type 3 tiers. Une couche DAO, une BLL et l'interface.

Voici le code initial de mon ObjectDataSource:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
<asp:ObjectDataSource ID="AgentObjectDataSource" runat="server" 
        DataObjectTypeName="EnrePaxDAO.Agent" DeleteMethod="SupprimerAgent" 
        InsertMethod="AjouterAgent" SelectMethod="GetListeEmbauche" 
        TypeName="EnrePaxBLL.AgentBLL" ConflictDetection="CompareAllValues" UpdateMethod="ModifierAgent" 
        ondeleted="AgentObjectDataSource_Deleted" 
        onupdated="AgentObjectDataSource_Updated">
        <UpdateParameters>
            <asp:Parameter Name="oAgent" Type="Object" />
            <asp:Parameter Name="origoAgent" Type="Object" />
        </UpdateParameters>
    </asp:ObjectDataSource>
Ma procédure de recherche:
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
27
28
29
30
31
32
33
34
35
public static Agent[] RechercherAgent(string aAgentMatricule,
                                              string aPhoto,
                                              string aCivilite,
                                              string aNom,
                                              string aPrenom,
                                              DateTime aDateNaissanceAgent, 
                                              string aLieuNaissanceAgent,
                                              string aEmpreinteIndexDroitAgent,
                                              DateTime aDateEmbauche, 
                                              string aSexeAgent,
                                              int aAncienneteAgent,
                                              int aGrade, 
                                              string aLogin,
                                              string aMotDepasse,
                                              DateTime aDateCreationMotdePasse,
                                              DateTime aDateDernièreConnexion,
                                              DateTime aDateDernièreDeconnexion, 
                                              string aAgentGroupe, 
                                              string aAgentEquipe,
                                              string aTelephoneAgent,
                                              string aEmailAgent,
                                              string aAdressePostaleAgent, 
                                              string aDomicileAgent,
                                              int aNiveauAnglais, int aNiveauEspagnol, int aNiveauArabe, int aNiveauPortuguais,
                                       string aObservationsAgent)
        {
 
 
            return AgentBLL.RechercheAgent(aAgentMatricule, aPhoto, aCivilite, aNom, aPrenom, aDateNaissanceAgent,
                                            aLieuNaissanceAgent, aEmpreinteIndexDroitAgent, aDateEmbauche, aSexeAgent,
                                            aAncienneteAgent, aGrade, aLogin, aMotDepasse, aDateCreationMotdePasse,
                                          aDateDernièreConnexion, aDateDernièreDeconnexion, aAgentGroupe, aAgentEquipe,
                                          aTelephoneAgent, aEmailAgent, aAdressePostaleAgent, aDomicileAgent,
                                          aNiveauAnglais, aNiveauEspagnol, aNiveauArabe, aNiveauPortuguais, aObservationsAgent);
        }
Mon bouton click:

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
27
28
29
30
31
32
33
34
35
36
 protected void BtRechercher_Click(object sender, EventArgs e)
        {
 
 
 
            RechercherAgent(txtMatricule.Text.Trim(),
                            LblFileUpPhotoAgent.Text.Trim(), 
                            DropDownListCivilite.SelectedValue,
                            txtNom.Text.Trim(),
                            txtPrenom.Text.Trim(),
                            Convert.ToDateTime(ddlJour.Text.Trim() + "/" + ddlMois.SelectedValue.Trim() + "/" + ddlAnnee.SelectedValue.Trim()), 
                            txtLieuNaissanceAgent.Text.Trim(),
                            LblFileUpEmpreinteIndexDroit.Text.Trim(),
                            Convert.ToDateTime(ddlJourEmbauche.SelectedValue.Trim() + "/" + ddlMoisEmbauche.SelectedValue.Trim() + "/" + ddlAnneeEmbauche.SelectedValue.Trim()),
                            ddlSexeAgent.SelectedValue,
                            Convert.ToInt32(txtAncienneteAgent.Text.Trim()),
                            Convert.ToInt32(txtGrade.Text.Trim()),
                            txtLogin.Text.Trim(),
                            txtMotDePasse.Text.Trim(),
                            Convert.ToDateTime(txtDateCreationMotDePasse.Text.Trim()),
                            Convert.ToDateTime(txtDerniereConnexion.Text.Trim()),
                            Convert.ToDateTime(txtDerniereDeconnexion.Text.Trim()),
                            txtAgentGroup.Text.Trim(),
                            txtAgentEquipe.Text.Trim(),
                            txtTelephoneAgent.Text.Trim(),
                            txtEmailAgent.Text.Trim(), 
                            txtAdressePostaleAgent.Text.Trim(), 
                            txtDomicileAgent.Text.Trim(),
                            Convert.ToInt32(txtNiveauAnglais.Text.Trim()),
                            Convert.ToInt32(txtNiveauEspagnol.Text.Trim()),
                            Convert.ToInt32(txtNiveauArabe.Text.Trim()), 
                            Convert.ToInt32(txtNiveauPortugais.Text.Trim()),
                            txtObservationAgent.Text.Trim());
 
           AgentObjectDataSource.SelectMethod = "RechercheAgent";
}
La méthode RechercheAgent dans la BLL:

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
public static Agent[] RechercheAgent(string aAgentMatricule,string aPhoto,string aCivilite,string aNom, string aPrenom,DateTime                                                    aDateNaissanceAgent,string aLieuNaissanceAgent,string aEmpreinteIndexDroitAgent, 
                                               DateTime aDateEmbauche,string aSexeAgent, int aAncienneteAgent,int aGrade,string aLogin,
                                               string aMotDepasse, DateTime aDateCreationMotdePasse, DateTime aDateDernièreConnexion,
                                               DateTime aDateDernièreDeconnexion, string aAgentGroupe,string aAgentEquipe,
                                               string aTelephoneAgent, string aEmailAgent,string aAdressePostaleAgent,
                                               string aDomicileAgent, int aNiveauAnglais, int aNiveauEspagnol, int aNiveauArabe, 
                                               int aNiveauPortuguais, string aObservationsAgent)
        {
            return AgentDAO.RechercherAgent(aAgentMatricule, aPhoto, aCivilite, aNom,aPrenom,aDateNaissanceAgent,
                                            aLieuNaissanceAgent,aEmpreinteIndexDroitAgent,aDateEmbauche, aSexeAgent,
                                            aAncienneteAgent,aGrade,aLogin,aMotDepasse,aDateCreationMotdePasse,
                                          aDateDernièreConnexion,aDateDernièreDeconnexion,aAgentGroupe,aAgentEquipe,
                                          aTelephoneAgent,aEmailAgent,aAdressePostaleAgent, aDomicileAgent,
                                          aNiveauAnglais,aNiveauEspagnol, aNiveauArabe,  aNiveauPortuguais,aObservationsAgent);
        }
A l'exécution j'ai ce message d'erreur:

Nom : 06-06-2014 20-11-52.png
Affichages : 112
Taille : 70,8 Ko

Merci de m'aider à résoudre ce problème.

Cordialement.