【问题标题】:Sending new database records to the website向网站发送新的数据库记录
【发布时间】:2012-10-05 19:15:24
【问题描述】:

我们在整个工厂有几个终端,员工将使用这些终端通过我们的供应/仓库部门提交零件请求。

此供应仓库将有一个终端显示“订单”网站,显示零件编号列表和等待它们的员工。

现在一切正常,但我只知道如何通过在<META REFRESH> 标记中编码来刷新数据,这并不能很好地工作,并导致表单上的许多其他信息在此过程中丢失.

我将如何告诉网页“监听”更改或只是每分钟更新一次 GridView?

我见过网站这样做。一旦有人回应,这个网站就会弹出一条注释,金融网站每隔几秒钟就会弹出最新的股票报价,等等。我不知道这项技术叫什么,也不知道我会如何使用它。

我是否在代码隐藏中编写了一些代码?

protected void Page_Load(object sender, EventArgs e) {
  // ???
}

这是我所拥有的基础知识。

<asp:SqlDataSource ID="productionDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:CPWEB_PRODUCTION %>" SelectCommand="SELECT [RequestID], [Employee], [DateStamp], [Line], [PartNo], [Workorder], [Qty], [MTF], [Status] FROM [vwRequestsEx] WHERE ([Status] = @Status)"><SelectParameters>
  <asp:ControlParameter ControlID="ddlSelector" Name="Status" PropertyName="SelectedValue" Type="String" />
  </SelectParameters>
</asp:SqlDataSource>
<asp:GridView ID="GridView1" runat="server" AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False" AutoGenerateSelectButton="True" CellPadding="1" DataSourceID="productionDataSource2" EmptyDataText="No Records to Display" Font-Size="Small" ForeColor="#333333" OnSelectedIndexChanged="GridViewRow_Selected" ShowHeaderWhenEmpty="True" HorizontalAlign="Left" RowHeaderColumn="RequestID" Width="95%">
  <Columns>
    <asp:BoundField DataField="RequestID" HeaderText="RequestID" SortExpression="RequestID" />
    <asp:BoundField DataField="Employee" HeaderText="Employee" SortExpression="Employee" />
    <asp:BoundField DataField="DateStamp" HeaderText="DateStamp" SortExpression="DateStamp" />
    <asp:BoundField DataField="Line" HeaderText="Line" SortExpression="Line" />
    <asp:BoundField DataField="PartNo" HeaderText="PartNo" SortExpression="PartNo" />
    <asp:BoundField DataField="Workorder" HeaderText="Workorder" SortExpression="Workorder" />
    <asp:BoundField DataField="Qty" HeaderText="Qty" SortExpression="Qty" />
    <asp:BoundField DataField="MTF" HeaderText="MTF" SortExpression="MTF" />
    <asp:BoundField DataField="Status" HeaderText="Status" SortExpression="Status" />
  </Columns>
</asp:GridView>

我最近收到很多反对票。 Downvoters:没关系,但请告诉我原因,以便我了解问题所在。

【问题讨论】:

    标签: c# asp.net sql-server visual-studio-2010


    【解决方案1】:

    在回答这个问题时,有一个使用 UpdatePanels 和 Timer 的简单解决方案:gridview that is updated frequently

    【讨论】:

    • 看起来很有希望。我看到一些 ScriptManager1 和 Timer 的 Tick 事件的引用,但后面没有代码。你知道ScriptManager1 是否需要一些东西来完成这项工作?
    • 实际上我认为你只需要在代码隐藏中的 Timer1_Tick 事件,它可能只是调用 GridView1.DataBind();并且 ScriptManager 只需要出现在页面上。还有其他方法可以使用 jQuery 或如果您使用 MVC 来完成这种类型的事情,但这更容易包装您已经拥有的东西。
    【解决方案2】:

    您应该考虑使用SignalR 来实现这一点。

    【讨论】:

    • 这看起来确实很整洁。希望我能理解。 :(
    • 我做到了。当它以@ 开头时,这是否意味着MVC 代码(如jQuery 在代码中使用$)。
    • 它看起来像一个使用 MVC/Razor 和 jQuery 的插件
    猜你喜欢
    • 1970-01-01
    • 2012-10-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-16
    • 2016-05-17
    • 1970-01-01
    相关资源
    最近更新 更多