猿问

如何为网页实现实时数据

我有一个在ASP.NET中实现的数据表。我想在页面上实时或接近实时显示对此基础数据的更改。我该怎么办?


我的模特:


public class BoardGame

    {

    public int Id { get; set;}

    public string Name { get; set;}

    public string Description { get; set;}

    public int Quantity { get; set;}

    public double Price { get; set;}


    public BoardGame() { }

    public BoardGame(int id, string name, string description, int quantity, double price)

        {

        Id=id;

        Name=name;

        Description=description;

        Quantity=quantity;

        Price=price;

        }

    }

代替此示例的实际数据库,我将把数据存储在Application变量中。我将其Application_Start植入我的Global.asax.cs函数中。


var SeedData = new List<BoardGame>(){

    new BoardGame(1, "Monopoly","Make your opponents go bankrupt!", 76, 15),

    new BoardGame(2, "Life", "Win at the game of life.", 55, 13),

    new BoardGame(3, "Candyland", "Make it through gumdrop forrest.", 97, 11)

    };

Application["BoardGameDatabase"] = SeedData;

如果使用的是Web窗体,则将使用中继器显示数据。


<h1>Board Games</h1>

        <asp:Repeater runat="server" ID="BoardGameRepeater" ItemType="RealTimeDemo.Models.BoardGame">

            <HeaderTemplate>

                <table border="1">

                    <tr>

                        <th>Id</th>

                        <th>Name</th>

                        <th>Description</th>

                        <th>Quantity</th>

                        <th>Price</th>

                    </tr>

            </HeaderTemplate>

            <ItemTemplate>

                <tr>

                    <td><%#: Item.Id %></td>

                    <td><%#: Item.Name %></td>

                    <td><%#: Item.Description %></td>

                    <td><%#: Item.Quantity %></td>

                    <td><%#: Item.Price %></td>

                </tr>

            </ItemTemplate>

            <FooterTemplate></table></FooterTemplate>

        </asp:Repeater>

并在后面的代码中加载该数据:


protected void Page_Load(object sender, EventArgs e)

    {

    BoardGameRepeater.DataSource = Application["BoardGameDatabase"];

    BoardGameRepeater.DataBind();

    }


手掌心
浏览 750回答 3
3回答
随时随地看视频慕课网APP
我要回答