これが解決されてから数ヶ月が経ちましたが、現在Windows Server 2008 R2でWISを使用しており、これを検索しています。時々私は答えを得ることができないので、私はインターネットを精査し、この解決策を考え出しました。
私はあなたに必要なコードを変換することができると確信していますが、...
あなたは、サーバーマネージャの役割から、Windows Server 2003のファイルサービスインデックスサービスをインストールする必要があります。
カタログプロパティでは、継承可能な設定を無効にして、WWWサーバーを適切に設定しました。また、キャラクタライゼーションの列に250文字分の抄録を作成しました。
私は私のカタログを設定するとき、私は含ま/私のウェブサイトのディレクトリの特定のフォルダを除外(サイトのルートを含む)に、私はそれを照会するとき、私は以下のSQLステートメントを使用:
EDIT:注意
using(OleDbConnection conn = new OleDbConnection("Provider=MSIDXS.1;Data Source='"+catalog+"'"))
{
//your connection and data collection code here
}
:ファイル
String fileTypes = "\".aspx\" OR \".doc*\" OR \".xls*\" OR \".ppt*\" OR \".txt\" OR \".pdf\" OR \".rtf\"";
String q = query.Text.Replace("'", "''");
sSqlString = "SELECT Filename, DocTitle, Size, VPath, Path, Rank, Write, Contents, Characterization ";
sSqlString += "FROM SCOPE() ";
sSqlString += "WHERE (CONTAINS(Contents, '\""+q+"\"') ";
sSqlString += "OR FREETEXT(Filename, '\""+q+"\"')) ";
sSqlString += "AND CONTAINS(Filename, '"+fileTypes+"') ";
sSqlString += "ORDER BY rank DESC, write DESC";
の名前を照会するFREETEXT(Filename, '\""+q+"\"'))
を使用することは、私が使用してステートメントを使用して、私の接続を作成します
私が遭遇した問題の1つは、特定のファイルタイプです。ドキュメント作成者がMS Office製品にドキュメントタイトルを含まない場合、DocTitleは取得できません。 pdfに認識可能なテキストがなく、文書のプロパティが記入されていない場合、docTitleとContentは空になります。私がそれを見る方法は、ビジネスがファイルを508に準拠させないと、結果が適切に表示されないことです。
私が使用しているListViewテンプレートの簡単なスニペットです。私の場合はdocTitleは、結果のヘッダーに使用され
<ItemTemplate>
<h3><a href="<%# vFilePath(Eval("Path")) %>"><%# Eval("DocTitle").ToString().Trim() == "" ? Eval("Filename").ToString().Split('.')[0] : ProperCase(Eval("DocTitle").ToString()) %></a></h3>
<p><span style="color:#0083be;">
<%# Request.ServerVariables["HTTP_HOST"].Length+vFilePath(Eval("Path")).Length > 100 ? (Request.ServerVariables["HTTP_HOST"]+vFilePath(Eval("Path"))).Substring(0,100)+"..." : Request.ServerVariables["HTTP_HOST"]+vFilePath(Eval("Path")) %></span><br />
<span style="color:#4d4e53"><%# String.Format("{0:MMMM dd, yyyy}",Eval("Write")) %> - </span>
<%# Eval("Characterization").ToString().Trim() == "" ? "..." : Eval("Characterization").ToString().Length == 250 ?
Eval("Characterization").ToString().Substring(0,250)+"..." : Eval("Characterization")%>
</p>
</ItemTemplate>
ので、私はそれが空の場合、私は空の文字列を取り、ファイル名、拡張子マイナスと交換できることを考え出し。
キーワードと説明を使用してメタタグを正しく使用しているかどうかを確認するときは、クエリを作成するときに確認してください。これと.aspxページの静的コンテンツはWISによって読み込まれます。 Characterizationを使用してコンテンツを取得することに気づくでしょう。
このlinkには、vb.netコードとともにW2k8 WISを設定する手順が記載されています。
このlinkは、照会および/または表示できる多数のプロパティの優れた情報源です。