Asp.net 如何使用已传递的参数值自动更新SqlDataSource,以更新DropDownList,使其在;第页“加载”;

Asp.net 如何使用已传递的参数值自动更新SqlDataSource,以更新DropDownList,使其在;第页“加载”;,asp.net,parameter-passing,sqldatasource,aspxgridview,page-load-time,Asp.net,Parameter Passing,Sqldatasource,Aspxgridview,Page Load Time,用户希望在首次显示ASPX页面时自动显示MVC页面上所选设备的数据。我遇到的问题是,我得到的DropDownList值和列标题显示在Page_Load上,但是,图表和GridView数据没有显示请求的数据 我正在通过MVC页面上的ActionLink单击将设备参数传递到ASPX页面,并将该值设置到DropDownList中。中的SelectedValue(1)!我回来了。DropDownList值用作列标题,但在多个SqlDataSource SelectCommands中也用作输入控制参数。这

用户希望在首次显示ASPX页面时自动显示MVC页面上所选设备的数据。我遇到的问题是,我得到的DropDownList值和列标题显示在Page_Load上,但是,图表和GridView数据没有显示请求的数据

我正在通过MVC页面上的ActionLink单击将设备参数传递到ASPX页面,并将该值设置到DropDownList中。中的SelectedValue(1)!我回来了。DropDownList值用作列标题,但在多个SqlDataSource SelectCommands中也用作输入控制参数。这些查询的结果用于创建折线图和GridView表,但不显示数据

ASPX页面也是一个独立页面,在没有初始参数的情况下可以正常工作。通过一个参数,它最终将在回发事件发生时显示数据;例如,当数据刷新计时器启动时。由于SqlDataSource命令返回回发时请求的数据,我认为我需要在初始页面加载期间以某种方式使所有SqlDataSource在服务器上“运行”。(仅对当前的SqlDataSource进行数据绑定并不能将其删除。)

到目前为止,我还没有找到如何做到这一点。有人能给我指一个链接,解释如何这样做,向他们自己解释,或者告诉我“正确”的解决方案是什么/在哪里(如果我完全偏离了基准)

以下是我到目前为止的情况:

MVC ActionLink到带有设备参数的ASPX页面:

<div style="max-height:335px;overflow:auto;">
    <table class="table table-bordered table-condensed table-striped">

        @foreach (var item in Model)
        {
        <tr>
            <td>
                @*@Html.DisplayFor(modelItem => item.CIRCUIT)*@
                @Html.ActionLink(item.CIRCUIT, null, "AmpLoadDaily", new { device = item.CIRCUIT }, null)
            </td>
计时器方法只是重新数据绑定,与!我回来了


预期结果是在“页面加载”上自动显示用户的结果,而不是让用户引起回发或必须等待屏幕的计时器刷新。

以下添加到ASPX页面的“回发”功能似乎用于在“页面加载”期间显示图表和网格数据。(在页面加载期间,它可能不会实际导致回发,但所选数据会在页面首次显示之前进行处理。)


如果('False'='')
{
__doPostBack();
}

好的,我取消了“请温柔”的要求。有人有什么吗?我尽我所能使用了“如何提出一个好问题”指南和常见问题解答。我的问题是否存在需要纠正的问题,或者是否没有人可以提供任何帮助?作为更新,我还没有在解决问题上取得任何进展。
<body>
    <form id="form1" runat="server">
        <asp:ScriptManager ID="ScriptManager1" runat="server">
        </asp:ScriptManager>

        <asp:Timer ID="Timer1" runat="server" Interval="90000" OnTick="Timer1_Tick">
        </asp:Timer>

        <asp:DropDownList runat="server" ID="ddlDevice1"  DataSourceID ="SqlDataSource_ddlDevice1" DataTextField="CIRCUIT" DataValueField="CIRCUIT" 
                          AppendDataBoundItems="true" AutoPostBack="true" Width="95" OnSelectedIndexChanged="ddlDevice1_SelectedIndexChanged">
            <asp:ListItem Text="-Device1-" Value=" " Selected="True">
            </asp:ListItem>
        </asp:DropDownList>
        <div class="auto-style1">
            <span class="auto-style4">
                <strong>Amp Load - Daily

                    <asp:UpdatePanel ID="UpdatePanel1" runat="server">
                        <Triggers>
                            <asp:AsyncPostBackTrigger ControlID="Timer1" EventName="Tick" />
                        </Triggers>

                        <ContentTemplate>
                            <asp:Chart ID="Chart1" runat="server" Width="900px" Height="500px">
                                <Series>
                                    <asp:Series ChartType="Spline" Name="ALL IA" XValueMember="Times" YValueMembers="ALL IA" Color="Red" BORDERWidth="2">
                                    </asp:Series>

                                    <asp:Series ChartType="Spline" Name="ALL IB" XValueMember="Times" YValueMembers="ALL IB" Color="Green" BORDERWidth="2">
                                    </asp:Series>

                                    <asp:Series ChartType="Spline" Name="ALL IC" XValueMember="Times" YValueMembers="ALL IC" Color="Blue" BORDERWidth="2">
                                    </asp:Series>

                                </Series>

                                <ChartAreas>
                                    <asp:ChartArea Name="ChartArea1">
                                        <AxisY Enabled="True" Interval="10" Title="AMPS" TitleFont="Times New Roman, 14.25pt" LineColor="RoyalBlue" TitleForeColor="#0033CC">
                                            <MajorGrid Interval="10" />
                                            <LabelStyle ForeColor="Blue" />
                                        </AxisY>

                                        <AxisX Interval="12" IsLabelAutoFit="False" Enabled="TRUE" IntervalOffset="1">
                                            <MajorGrid Interval="4" IntervalOffset="1" />
                                            <LabelStyle IntervalOffset="1" />
                                        </AxisX>
                                    </asp:ChartArea>
                                </ChartAreas>

                                <Legends>
                                    <asp:Legend Alignment="Center" BackImageAlignment="TopRight" Docking="Bottom" Name="Legend1"></asp:Legend>
                                </Legends>
                            </asp:Chart>
                        </ContentTemplate>
                    </asp:UpdatePanel>
                </strong>
            </span>
                    <td class="auto-style6">
                        <asp:UpdatePanel ID="UpdatePanel2" runat="server">
                            <Triggers>
                                <asp:AsyncPostBackTrigger ControlID="Timer1" EventName="Tick" />
                            </Triggers>
                            <ContentTemplate>
                                <%= ddlDevice1.SelectedValue %>
                            </ContentTemplate>
                        </asp:UpdatePanel>
                    </td>
                    <td>
                        <asp:UpdatePanel ID="UpdatePanel32" runat="server">
                            <Triggers>
                                <asp:AsyncPostBackTrigger ControlID="Timer1" EventName="Tick" />
                            </Triggers>
                            <ContentTemplate>
                                <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" GridLines="None" ShowHeader="False" CssClass="auto-style7" >
                                    <Columns>
                                        <asp:BoundField DataField="Value" HeaderText="Value" ReadOnly="True" SortExpression="Value" ItemStyle-ForeColor="Red"/>
                                    </Columns>
                                </asp:GridView>
                            </ContentTemplate>
                        </asp:UpdatePanel>
                    </td>
       <asp:SqlDataSource ID="SqlDataSource_Chart" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString2 %>"
            SelectCommand="SELECT FORMAT(CONVERT(DATETIME,T.[Time_values]), 'hh:mm tt') AS [Times],
                                  SUM(C.[IA]) AS [ALL IA],
                                  SUM(C.[IB]) AS [ALL IB],
                                  SUM(C.[IC]) AS [ALL IC]
                           FROM [SCADA].[dbo].[TIMEVALUES] T
                           LEFT OUTER JOIN
                               (SELECT FORMAT([RUNTIME],'hh:mm tt') AS [TIME],
                                       [IA],
                                       [IB],
                                       [IC]
                                FROM  [CIRCUITS1DAY] 
                                WHERE FORMAT([RUNTIME], 'yyyy/MM/dd') = FORMAT(GETDATE(), 'yyyy/MM/dd') AND
                                     ([CIRCUIT]=@ddlDevice1  OR [CIRCUIT]=@ddlDevice2  OR [CIRCUIT]=@ddlDevice3  OR [CIRCUIT]=@ddlDevice4  OR
                                      [CIRCUIT]=@ddlDevice5  OR [CIRCUIT]=@ddlDevice6  OR [CIRCUIT]=@ddlDevice7  OR [CIRCUIT]=@ddlDevice8  OR
                                      [CIRCUIT]=@ddlDevice9  OR [CIRCUIT]=@ddlDevice10 OR [CIRCUIT]=@ddlDevice11 OR [CIRCUIT]=@ddlDevice12 OR 
                                      [CIRCUIT]=@ddlDevice13 OR [CIRCUIT]=@ddlDevice14 OR [CIRCUIT]=@ddlDevice15 OR [CIRCUIT]=@ddlDevice16 OR 
                                      [CIRCUIT]=@ddlDevice17 OR [CIRCUIT]=@ddlDevice18 OR [CIRCUIT]=@ddlDevice19 OR [CIRCUIT]=@ddlDevice20 OR 
                                      [CIRCUIT]=@ddlDevice21 OR [CIRCUIT]=@ddlDevice22 OR [CIRCUIT]=@ddlDevice23 OR [CIRCUIT]=@ddlDevice24 OR 
                                      [CIRCUIT]=@ddlDevice25 OR [CIRCUIT]=@ddlDevice26 OR [CIRCUIT]=@ddlDevice27 OR [CIRCUIT]=@ddlDevice28 OR 
                                      [CIRCUIT]=@ddlDevice29 OR [CIRCUIT]=@ddlDevice30)) C
                           ON
                               FORMAT(CONVERT(DATETIME,T.[Time_values]), 'hh:mm tt') = C.[TIME]
                           GROUP BY CONVERT(DATETIME,T.[Time_values])">
            <SelectParameters>
                <asp:ControlParameter ControlID="ddlDevice1"  PropertyName="SelectedValue" Name="ddlDevice1"  Type="String" />
                <asp:ControlParameter ControlID="ddlDevice2"  PropertyName="SelectedValue" Name="ddlDevice2"  Type="String" />
                <asp:ControlParameter ControlID="ddlDevice3"  PropertyName="SelectedValue" Name="ddlDevice3"  Type="String" />
                <asp:ControlParameter ControlID="ddlDevice4"  PropertyName="SelectedValue" Name="ddlDevice4"  Type="String" />
                <asp:ControlParameter ControlID="ddlDevice5"  PropertyName="SelectedValue" Name="ddlDevice5"  Type="String" />
                <asp:ControlParameter ControlID="ddlDevice6"  PropertyName="SelectedValue" Name="ddlDevice6"  Type="String" />
                <asp:ControlParameter ControlID="ddlDevice7"  PropertyName="SelectedValue" Name="ddlDevice7"  Type="String" />
                <asp:ControlParameter ControlID="ddlDevice8"  PropertyName="SelectedValue" Name="ddlDevice8"  Type="String" />
                <asp:ControlParameter ControlID="ddlDevice9"  PropertyName="SelectedValue" Name="ddlDevice9"  Type="String" />
                <asp:ControlParameter ControlID="ddlDevice10" PropertyName="SelectedValue" Name="ddlDevice10" Type="String" />
                <asp:ControlParameter ControlID="ddlDevice11" PropertyName="SelectedValue" Name="ddlDevice11" Type="String" />
                <asp:ControlParameter ControlID="ddlDevice12" PropertyName="SelectedValue" Name="ddlDevice12" Type="String" />
                <asp:ControlParameter ControlID="ddlDevice13" PropertyName="SelectedValue" Name="ddlDevice13" Type="String" />
                <asp:ControlParameter ControlID="ddlDevice14" PropertyName="SelectedValue" Name="ddlDevice14" Type="String" />
                <asp:ControlParameter ControlID="ddlDevice15" PropertyName="SelectedValue" Name="ddlDevice15" Type="String" />
                <asp:ControlParameter ControlID="ddlDevice16" PropertyName="SelectedValue" Name="ddlDevice16" Type="String" />
                <asp:ControlParameter ControlID="ddlDevice17" PropertyName="SelectedValue" Name="ddlDevice17" Type="String" />
                <asp:ControlParameter ControlID="ddlDevice18" PropertyName="SelectedValue" Name="ddlDevice18" Type="String" />
                <asp:ControlParameter ControlID="ddlDevice19" PropertyName="SelectedValue" Name="ddlDevice19" Type="String" />
                <asp:ControlParameter ControlID="ddlDevice20" PropertyName="SelectedValue" Name="ddlDevice20" Type="String" />
                <asp:ControlParameter ControlID="ddlDevice21" PropertyName="SelectedValue" Name="ddlDevice21" Type="String" />
                <asp:ControlParameter ControlID="ddlDevice22" PropertyName="SelectedValue" Name="ddlDevice22" Type="String" />
                <asp:ControlParameter ControlID="ddlDevice23" PropertyName="SelectedValue" Name="ddlDevice23" Type="String" />
                <asp:ControlParameter ControlID="ddlDevice24" PropertyName="SelectedValue" Name="ddlDevice24" Type="String" />
                <asp:ControlParameter ControlID="ddlDevice25" PropertyName="SelectedValue" Name="ddlDevice25" Type="String" />
                <asp:ControlParameter ControlID="ddlDevice26" PropertyName="SelectedValue" Name="ddlDevice26" Type="String" />
                <asp:ControlParameter ControlID="ddlDevice27" PropertyName="SelectedValue" Name="ddlDevice27" Type="String" />
                <asp:ControlParameter ControlID="ddlDevice28" PropertyName="SelectedValue" Name="ddlDevice28" Type="String" />
                <asp:ControlParameter ControlID="ddlDevice29" PropertyName="SelectedValue" Name="ddlDevice29" Type="String" />
                <asp:ControlParameter ControlID="ddlDevice30" PropertyName="SelectedValue" Name="ddlDevice30" Type="String" />
            </SelectParameters>
        </asp:SqlDataSource>
namespace Mvc
{
    public partial class AmpLoadDaily : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                ddlDevice1.SelectedValue = Request.QueryString["device"];

                Chart1.DataSource = SqlDataSource_Chart;
                Chart1.DataBind();
                GridView1.DataSource = SqlDataSource_grdTotal_IA;
                GridView1.DataBind();
<body>
    <form id="form1" runat="server">
        <asp:ScriptManager ID="ScriptManager1" runat="server">
        </asp:ScriptManager>

        <script type="text/javascript">  
            if ('False' === '<%= Page.IsPostBack.ToString()%>') 
            {
                __doPostBack();
            }
        </script>  

        <asp:Timer ID="Timer1" runat="server" Interval="90000" OnTick="Timer1_Tick">
        </asp:Timer>

        <asp:DropDownList runat="server" ID="ddlDevice1"  DataSourceID ="SqlDataSource_ddlDevice1" DataTextField="CIRCUIT" DataValueField="CIRCUIT" 
                          AppendDataBoundItems="true" AutoPostBack="true" Width="95" OnSelectedIndexChanged="ddlDevice1_SelectedIndexChanged">
            <asp:ListItem Text="-Device1-" Value=" " Selected="True">
            </asp:ListItem>
        </asp:DropDownList>