0

我喜欢VS2010中内置的DataSet设计器提供的许多内置功能,如果可能的话,不想改变为完全不同的东西。问题是,要有可选的参数,我需要为每个参数组合创建完全独立的函数。所以对于6个参数,我需要63个不同的功能。这显然完全无法管理。VS2010中的DataSet设计器是否支持可选参数?

有没有办法有一个功能,只是增加了一个参数,我的SQL如果它有一个价值的产生WHERE子句,否则,它会忽略?

+0

你不能使用参数集合并创建你的WHERE子句吗? –

+0

@Rhhound你能提供一个如何做到这一点的例子吗? –

回答

2

你可以添加这些可选paremeters到WHERE子句与ISNULL

WHERE (YourTable.Column = ISNULL(@Column, YourTable.Column)) 

在这样的SQL工作带或不带参数(可选)。如果该值为空,则不会影响结果。 您只需将所有参数添加到DataAdapter的参数集合中(可选AllowDbNull = true)。但我很确定他们会自动添加正确。

+0

如何将此添加到自动生成的DataSet设计器代码(xsd)? –

+0

你为什么要添加一些东西?参数应该在“Where-Clause”中自动创建。 –

+0

太棒了!我不知何故误解了你第一次提出的建议。你对使用如此多的ISNULL和真理(即Table.Column = Table.Column)的性能影响有任何想法吗? –