asp:SqlDataSource数据源 中引用input控件和asp控件

asp:SqlDataSource 需要添加命名控件 using System.Web.UI.WebControls;

    如果 SelectCommand 属性包含参数化 SQL 查询,则 SelectParameters 集合将包含与 SQL 字符串中的参数占位符相对应的所有 Parameters 对象。根据 ADO.NET 提供程序的不同,SelectParameters 集合中参数的顺序可能很重要。System.Data.OleDb 和 System.Data.Odbc 提供程序根据集合中的参数在参数化 SQL 查询中出现的顺序关联这些参数。 System.Data.SqlClient 提供程序(它是 SqlDataSource 控件的默认 ADO.NET 提供程序)通过将参数名称与 SQL 查询中的占位符别名匹配来关联此集合中的参数。

服务器控件:

<asp:SqlDataSource ID = "DYworktime" runat = "server" 
                ConnectionString="<%$ ConnectionStrings:Production_ManagementConnectionString %>" 
                SelectCommand="SELECT GoodsNum AS 生产批号, var1 AS 列1别名,... FROM tablename                                         WHERE (GoodsNum = @shengchanpihao)">
                <SelectParameters>
                    <asp:ControlParameter ControlID="Label27" Name="shengchanpihao" 
                        PropertyName="Text" />
                </SelectParameters>
            </asp:SqlDataSource>
注:在实例对应的值

        1)Name为sqlString中的输入变量@shengchanpiha的名字;

        2)ControlID为参数值的来源(实例中为控件,可以程序变量、用户标识或用户选择的值)的id;

        3)PropertyName以指定包含参数值的属性;

        3)where 条件中不能用别名做判断,运行时会显示,此列名无效

input控件:

<asp:SqlDataSource ID = "lailiaoshenchan" runat = "server"

        ConnectionString = "<%$ ConnectionStrings:Production_ManagementConnectionString %>"
        SelectCommand = "select ShengchanNum from Lailiao_Shengchan where LailiaoNum = @lailiao">
        <SelectParameters>
            < asp:FormParameter FormField="LailiaoNum" Name="lailiao" />
        </SelectParameters>   

  </asp:SqlDataSource>

注:若红色、蓝色部分用错,会显示错误“找不到**控件”;

你可能感兴趣的:(服务器控件和input控件)