使用ListBox更新分数标签

时间:2011-02-27 03:00:55

标签: c# .net asp.net sql

我有一个DB,其中如下所示:

Game
----------------
WinningID (FK)
LoosingID (FK)
Score

Player
----------------
ID (PK)
Name
Rank
Country

我的游戏表包含玩家互相胜利的得分。所以WinnindID(Player1)与。 LoosingID(Player2)得分为4.

话虽如此。我正在创建一个网页,我必须在其中显示分数。我用List Names填充了ListBoxes,并有两个标签来显示分数。

  • 标签1:将Player1显示为对手并获胜。
  • 标签2:将Player2显示为对手并获胜。

我不知道从哪里开始:(任何人都可以给我一些要点吗?谢谢你!

1 个答案:

答案 0 :(得分:0)

没有为您编写所有代码,这是一般性的想法。一旦开始开发并需要进一步的帮助,请回来并发布具体问题。

这是一种简单的方法,包含在同一项目/网页中的所有逻辑,数据和UI。根据应用程序的大小,您需要专门为数据访问创建项目(通常称为DAL - 数据访问层)。随着时间的推移,您可能希望开始使用MVC框架。

本质:

  1. 创建一种从数据库中检索所有玩家的方法:string GetPlayers(){...}
  2. 使用GetPlayers()方法在页面加载时设置ListBox的DataSource。
  3. 在ListBox上为SelectedIndexChanged事件创建一个事件处理程序。
  4. 触发SelectedIndexChanged事件时:
    • 查询数据库以检索所选的播放器。查询将使用Game.WinningID加入在ListBox中选择的Player.ID,然后将Game.LoosingID加入Player.ID以找到失败的玩家。
    • 将Label 1的文本属性的值设置为获胜者的姓名。
    • 将Lable 2的文本proeprty的值设置为更宽松的名称。
  5. 如果玩家可以拥有多个游戏,那么你的场景就没有意义了。如果玩家可以拥有多个游戏,那么当触发SelectedIndexChanged事件时,您将从数据库中检索多个记录。这意味着您必须在页面上创建一个重复部分,以显示玩家赢得的所有游戏以及丢失的人。

    我的建议是开始编写代码并查看是否可以运行。当您遇到绊脚石时,搜索网络并查看是否可以找到一些解决方案。如果您没有想法,请回到SO并发布您的具体问题。