0

私はしばらくこの問題に苦しんでいます。

これは私がやりたいことです:

次のような Windows インデックス サービスのクエリを作成したいと考えています。

SELECT ... FROM  (TABLE Catalog1..Scope('Deep traversal of "Path1"','Deep traversal of "Path2"') UNION ALL TABLE Catalog2..Scope('Deep traversal of "Path3"')) WHERE ...

<asp:Listbox SelectionMode=multiple>(データソースとしてファイルを持つ)から情報を取得します

そして、それは次のようになります。

'DisplayNameInListbox1'=Catalog1@Path1;Path2&Catalog2
'DisplayNameInListbox2'=Catalog1@Path1
'DisplayNameInListbox3'=Catalog1@Path1;Path2&Catalog2@Path3
...

リストボックスの値の 1 つに複数のカタログを指定でき、複数の値を選択できます。各カタログはスタンドアロンにすることも、指定したパス (@path;path2) に制限することもできます

私の試み:Dictionary<string Catalog, List<string Paths>> 同じカタログ名を含む 2 つの値を選択しない場合、すべての情報を に保存しようとしました。パスの制限が異なる可能性があるため、その名前のキーが既にある場合は、カタログをスキップすることもできません。

この問題を解決する良い方法を見つけるのを手伝ってくれる人はいますか? (データの保存方法を変更することも可能です-ファイルからリストボックスに提供できるようにする必要があるだけです)

乾杯

4

1 に答える 1

0

ここに私の問題の解決策があります:

ほとんどの場合、最も単純なソリューションが最適だと思います。

私は問題を 2 つの部分に分けました。ここで、最初にカタログとパスをマージして、すべてのカタログがディクショナリに 1 回だけ存在するようにします。

そして、2番目のステップで、クエリを順番に作成できます:)

于 2013-02-18T09:38:50.713 に答える