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)的性能影響有任何想法嗎? –