我一直在努力解决这个问题。
这就是我想要做的事情:
我想为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
...
在其中一个列表框值中,可以是多个目录,可以选择多个值。 每个目录可以单独使用,也可以限制为指定的路径(@path; path2)
我的尝试:
我试图将所有信息存储在Dictionary<string Catalog, List<string Paths>>
中
如果我不选择两个包含相同目录名称的值,它可以正常工作。如果我已经有一个具有该名称的密钥,我也不能跳过目录,因为路径限制可能不同。
任何人都可以帮我找到解决这个问题的好方法吗? (也可以改变数据的存储方式 - 我只需要能够从文件中将它提供给Listbox)
干杯
答案 0 :(得分:0)
这是我的问题的解决方案:
我猜大多数时候最简单的解决方案是最好的!
我把问题分成两部分。现在我首先合并目录和路径,以便每个目录在字典中只退出一次。
在第二步中,我可以按顺序构建查询:)