所以我一直在使用sqldatasource与多个控制参数在asp.net中进行搜索。如果一个控件被填充了,但是另一个不是(如果我留下一个空白,它不会带来任何东西),这让我有点想要让我的桌子被搜索到。我现在唯一的问题是,一旦页面打开,它将填充整个数据库的gridview。也许我对这一切都是错误的,但我的最终目的是要有一个包含8个文本框的搜索页面来搜索数据库。任何帮助将不胜感激。不知道这是否是您需要的所有信息,但请告诉我。先进的感谢,所有。希望gridview只填写按钮单击
<asp:SqlDataSource ID="SqlDataSource4" runat="server" ConnectionString="<%$ ConnectionStrings:Conn %>" CancelSelectOnNullParameter="false"
SelectCommand="SELECT [ID], [ContractNo], [OMBEmp], [Cono], [ReviewDate], [AmendNo], [RType], [Contractor], [Purpose], [Department] FROM [tblContractLog] WHERE (([ContractNo] = @ContractNo OR @ContractNo = '') AND ([OMBEmp] = @OMBEmp OR @OMBEmp = '') AND ([Cono] = @Cono OR @Cono = '') AND ([AmendNo] = @AmendNo OR @AmendNo = '') AND ([RType] = @RType OR @RType = '') AND ([Contractor] = @Contractor OR @Contractor = '') AND ([Purpose] = @Purpose OR @Purpose = '') AND ([Department] = @Department OR @Department = ''))">
<SelectParameters>
<asp:ControlParameter ControlID="contractnumb" Name="ContractNo"
PropertyName="Text" Type="String" ConvertEmptyStringToNull="false"/>
<asp:ControlParameter ControlID="employeetext" Name="OMBEmp"
PropertyName="Text" Type="String" ConvertEmptyStringToNull="false"/>
<asp:ControlParameter ControlID="conumb" Name="Cono"
PropertyName="Text" Type="String" ConvertEmptyStringToNull="false"/>
<asp:ControlParameter ControlID="amendnumbtxt" Name="AmendNo"
PropertyName="Text" Type="String" ConvertEmptyStringToNull="false"/>
<asp:ControlParameter ControlID="rtypetxt" Name="RType"
PropertyName="Text" Type="String" ConvertEmptyStringToNull="false"/>
<asp:ControlParameter ControlID="contractortxt" Name="Contractor"
PropertyName="Text" Type="String" ConvertEmptyStringToNull="false"/>
<asp:ControlParameter ControlID="purposetxt" Name="Purpose"
PropertyName="Text" Type="String" ConvertEmptyStringToNull="false"/>
<asp:ControlParameter ControlID="departmenttxt" Name="Department"
PropertyName="Text" Type="String" ConvertEmptyStringToNull="false"/>
</SelectParameters>
</asp:SqlDataSource>
谢谢,那正是我想要的! – Control