經過 訪問嵌套控件

不可直接訪問某控件時,可經過添加 <SelectParameters>屬性來訪問,如asp:table中嵌套ComboBox控件時。c#

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

        ConnectionString="<%$ ConnectionStrings:Production_ManagementConnectionString %>" 
        
        
        SelectCommand="SELECT 來料日期, 客戶名稱, 品名, 來料批號,  規格, 材質, 數量, 重量, 硬度要求, 滲層要求, 變形要求, 其餘要求, 處理類別, 入庫日期, 發貨日期, 備註 FROM ExWarehouseView WHERE (客戶名稱 = @客戶名稱2) ORDER BY 來料日期 DESC">
        <SelectParameters>
            <asp:ControlParameter ControlID="ComboBox1" Name="客戶名稱2" 
                PropertyName="SelectedValue" Type="String" />
        </SelectParameters>
    </asp:SqlDataSource>
io

後臺:kehu. SelectCommand="SELECT 來料日期, 客戶名稱, 品名, 來料批號,  規格, 材質, 數量, 重量, 硬度要求, 滲層要求, 變形要求, 其餘要求, 處理類別, 入庫日期, 發貨日期, 備註 FROM ExWarehouseView WHERE (客戶名稱 = '"+temp.Text+"') ORDER BY 來料日期 DESC"table

附加:第二種用法:
<asp:SqlDataSource ID = "goods1" runat = "server"
                         ConnectionString = "<%$ ConnectionStrings:Production_ManagementConnectionString %>" 
                        SelectCommand = "SELECT 客戶名稱,材質, 規格, 來料批號,收發卡號, 急件, 交貨日期, 硬度要求,滲層要求,變形要求, 其餘,總重量, 已排重量,數量,已排數量 FROM daiJiagong WHERE (來料批號 LIKE 'DY%') AND (收發卡號 IN (@rfid)) order BY 材質,急件,硬度要求 ">
                        <SelectParameters>
                            <asp:ControlParameter ControlID="tempp" Name="rfid" PropertyName="Text" />
                        </SelectParameters>
後臺

                    </asp:SqlDataSource>  變量

注意:此種用法在後臺需從新初始化SelectCommand屬性值。此時需注意,變量「收發卡號」的數據格式,如若「收發卡號」的格式爲varchar類型,則rfid中的每個數據都必須爲varchar類型,在c#裏,就必須加單引號。
如:tempp.Text = "'01',''02";//這裏若爲"1,2",則會出錯
SqlDataSource1.SelectCommand = "SELECT 來料批號, 收發卡號,客戶名稱,材質, 規格,急件, 總重量,已排重量,已排數量,硬度要求,數量 FROM daiJiagong WHERE (來料批號 LIKE 'DY%') AND 收發卡號 IN (" + tempp.Text.ToString() + ") order BY 材質,急件,硬度要求"//這裏若爲收發卡號 IN '(" + tempp.Text.ToString() + ")',亦會出錯,這裏的集合不必用數據

相關文章
相關標籤/搜索