【发布时间】:2011-08-01 15:37:06
【问题描述】:
我正在寻找一种方法来构建一个内部搜索引擎,该引擎将根据条件搜索交易。 我遇到的问题是更多的标准意味着更多的检查..所以如果有 6 个标准..我几乎必须在 IF 语句中执行 6 x 6 = 36 ELSE。这么大..我很确定还有其他方法可以做到。
说明:如果我有一个具有 A、B、C、D、E、F 的对象,我必须检查是否
A,B,C,D,E NOT F
A,B,C,D, NOT E, F
A,B,C, NOT D, E, F
etc..
那么我该如何处理呢? (我在 WPF 中使用 C#)
编辑:这里有更多细节。
- 这是代码而不是 SQL。
- 必须评估的标准数量取决于用户。
谢谢。
【问题讨论】:
-
您能否发布更多详细信息,例如您对此有何标准?它们如何指定给搜索引擎等。这样会更容易更好地回答。
-
您对需要多少个 IF 语句的计算不正确。你真的需要 2^6=64 语句,而不是 6^2。如果你想要 A="blah" 和 A NOT ="blah" 那么你需要 2^7=128 检查。 (嗯,是这样吗?)
-
(显然我并不是建议你硬编码 128 if 语句)
-
@Brian 我希望所以我为什么在这里问大声笑,但是是的,我犯了一个错误,它正是我需要的 64 条语句..但我不能硬编码这个..那太疯狂了。
-
@Lasse 我有一个对象和一个搜索引擎,您可以在其中输入 6 个条件。您必须能够评估这 6 个标准,以确定交易是否是结果的一部分。