Bonjour, je suis en train de développer un pavé de recherche pour l'intranet de mon entreprise et je tombe sur un petit problème.
Je doit utiliser le service d'indexation de windows pour trouver des documents contenant les mots entrés par l'utilisateur dans un TextBox.
Mon problème vient du fait que certains caractères ne sont pas gérés par ce service.
Je ne vous parle pas des caractères présent dans le fichier "noise.fra" mais des caractères comme, par exemple, @, #, + etc.
Voici mon code
Petites explications:
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 OleDbConnection Conn = new OleDbConnection(); String ConnStr = "Provider=MSIDXS.1;Data Source=" + NomCatalogue; ConnexionOleDb maConn = new ConnexionOleDb(Conn, ConnStr); DataSet monDataSet = new DataSet(); String strReq = "SELECT Rank,DocTitle,Filename,Size,PATH,URL " + "FROM Scope() WHERE FREETEXT(Contents,' " + Recherche + " ')"; OleDbCommand maCmd = new OleDbCommand(strReq, maConn.OleDbConn); maConn.Open(); OleDbDataAdapter monDataAdapter = new OleDbDataAdapter(); monDataAdapter.SelectCommand = maCmd; monDataAdapter.Fill(monDataSet, "Resultat"); maConn.Close();
- j'utilise une classe que j'ai créer (ConnexionOleDb)
- Recherche correspond aux critères entrés par l'utilisateur
- NomCatalogue est le nom du catalogue à interroger
Partager