0

我喜欢内置数据集设计器在 VS2010 中提供的许多内置功能,并且如果可能的话,我不想更改为完全不同的东西。问题是,要拥有可选参数,我需要为每个参数组合创建完全独立的函数。所以对于 6 个参数,我需要 63 个不同的函数。这显然是完全无法控制的。

有没有办法让一个函数只在我的 SQL 的生成的 WHERE 子句中添加一个参数,如果它有一个值,否则它会忽略它?

4

1 回答 1

2

您可以使用ISNULL将这些可选参数添加到 WHERE-Clause 中:

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

通过这种方式,SQL 可以使用或不使用(可选)参数。如果值为 null,则不会影响结果。您只需将所有参数添加到 DataAdapter 的参数集合中(带有AllowDbNull=true 的可选参数)。但我相当确定它们会自动正确添加。

于 2011-10-05T13:47:58.607 回答