-1

我正在尝试使用 ASP.NET 构建示例网页,这是我的第一次尝试。

我不知道如何解释,但无论如何,就是这样

在设计时

<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
        ConnectionString="<%$ ConnectionStrings:AAAAConnectionString %>" 
        SelectCommand="SELECT [ABC], [firstname], [lastname], [companyname], [email], [phone], [fax] FROM [XYZ]">
    </asp:SqlDataSource>

在运行时我想过滤选择命令中的列(比如名字和姓氏)

4

4 回答 4

2

你可以使用SqlDataSource.FilterExpression属性

获取或设置调用 Select 方法时应用的筛选表达式。

例如;

<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
     ConnectionString="<%$ ConnectionStrings:AAAAConnectionString %>" 
     SelectCommand="SELECT [ABC], [firstname], [lastname], [companyname], [email], [phone], [fax] FROM [XYZ]"
     FilterExpression="firstname ='Adhithya' and lastname = 'lyer'">
</asp:SqlDataSource>
于 2013-09-03T10:34:10.473 回答
1

你可以通过代码做到这一点

var sql = "SELECT [ABC], [firstname], [lastname], [companyname], [email], [phone], [fax] FROM [XYZ]";
if (condition)
{
    sql = "SELECT [firstname], [lastname] FROM [XYZ]";
}
SqlDataSource1.SelectCommand = sql;
gvS.DataBind(); 
于 2013-09-03T10:44:06.003 回答
1

使用 SqlDataSource 并使用 LIKE 条件创建 2 个参数并设置默认值 % 下面是一个 TextBox 的示例:

    <asp:SqlDataSource runat="server" ID="SqlDataSource1" ConnectionString='<%$ ConnectionStrings:CosmicConnectionString %>' SelectCommand="SELECT [ItemGroupId], [GroupNameArabic], [GroupNameEnglish] FROM [CategoriesView] WHERE ([GroupNameEnglish] LIKE '%' + @GroupNameEnglish + '%')">
        <SelectParameters>
            <asp:ControlParameter ControlID="txtFilter" PropertyName="Text" DefaultValue="%" Name="GroupNameEnglish" Type="String"></asp:ControlParameter>
        </SelectParameters>
    </asp:SqlDataSource> 
于 2013-09-03T11:00:17.073 回答
0

您可以使用 DropDownList.SelectedIndexChanged() 重新获取和绑定数据,然后使用 DropDownList.SelectedValue 确定要选择/可见的列吗?

于 2013-09-03T14:05:57.083 回答