我有一个asp.net c#网站,我正在用Visual Web Developer Express Edition 2010进行开发。在这个网站中,我有一个FilterExpression,它应该过滤三个标准:开始日期,结束日期和关键字搜索。FilterExpression问题 - 多个条件
我能够获得自己开始和结束日期过滤器的工作,并且关键字搜索也是独立工作的。我遇到的麻烦是让所有三个人一起工作。
我使用(见下文)的代码在默认情况下(良好)显示所有记录,确实想筛选时,以下几点:
- 搜索关键字:所有记录
- 搜索关键字以及日期范围:没有记录
- 只是日期范围:所有记录
下面的代码我现在有,它会尝试所有这三个整合,但不起作用。任何意见将是有益的:
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:sermonConnectionString %>"
SelectCommand="SELECT ID, sermon_date, sermon_speakerfirst + ' ' + sermon_speakerlast AS Speaker, sermon_title, sermon_subtitle, sermon_notes FROM what ORDER BY sermon_date DESC"
FilterExpression="([sermon_title] LIKE '%{0}%') AND ([sermon_date] >= '{1}' AND [sermon_date] <= '{2}')">
<FilterParameters>
<asp:ControlParameter ControlID="TextBox2" PropertyName="Text" Type="DateTime" ConvertEmptyStringToNull="true" />
<asp:ControlParameter ControlID="TextBox3" PropertyName="Text" Type="DateTime" ConvertEmptyStringToNull="true"/>
<asp:ControlParameter ControlID="SermonSearch" PropertyName="Text" Type="String"/>
</FilterParameters>
</asp:SqlDataSource>
请保持像“Asp.net C#”标记出你的标题 - 只使用标签这一点。 – 2010-08-03 19:18:44