从班级接收所有信息

时间:2013-11-21 21:16:58

标签: c# class listbox

我有一些代码,我遇到了问题,希望有人可以帮助我,基本上我有一个'播放器'类,如:

        Player JanMccoy = new Player { playerFirstname = "Jan", playerSurname = "Mccoy", playerAge = 23,
        playerCode = "MCC0001"};

我有大约10个玩家,所有玩家都有自己的唯一代码,基本上这个代码存储在名称和姓氏的列表框中。数据如何获取并不重要,基本上虽然列表框中有10个值看起来像“Jan Mccoy(MCC0001)”

基本上我想现在能够获得班上人的年龄,我有一个按钮事件,当他从列表框中获取所选项目时,我将其存储到一个字符串中只是playerCode,这个代码我需要能够让玩家年龄

我知道这是SQL,但我需要的东西基本上就像:

SELECT * FROM MyClass WHERE playerCode = strPlayerCode

但是我没有使用SQL,我需要能在C#

中做到这一点

如果我需要再添加细节,请尽量解释。

如果你能指出我正确的方向也很棒!

2 个答案:

答案 0 :(得分:1)

然后我会尝试LINQ:

var player = players.Where(p => p.playerCode == "MCC001").FirstOrDefault();

答案 1 :(得分:1)

c# Linq SQLSELECT * FROM MyClass WHERE playerCode = strPlayerCode

类似

例如:

var players = myListOfPlayers.Where(p => p.playerCode == strPlayerCode);

将是

playercode

这将返回具有FirstOrDefault

的所有玩家的集合

但是,由于您说密钥是唯一的,并且您只返回单个记录where,因此无需SELECT TOP 1 FROM ....子句即可正常工作。比如var player = myListOfPlayers.FirstOrDefault(p => p.playerCode == strPlayerCode);

{{1}}