对不起,我是新手,我不知道如何在标题中正确地提出我的问题。我有一个数据库:class PlayerData { public ulong id; public string name; public int kills; public int deaths; }我想返回与请求的键对应的值object getStats(ulong uid, string stat) { var player = BasePlayer.FindByID(uid); PlayerData data = PlayerData.Find(player); object value = data.TryGetValue(stat); // I know this ain't right return value; }例子:int kills = getStats(123456, kills); //will ask for the value of "kills" in the data. Return data.killsstat 可以是数据中的任何内容(id、名称、杀戮数、死亡数)
2 回答
森栏
TA贡献1810条经验 获得超5个赞
我想您在这里尝试做的是根据对象名称获取对象值?如果是这种情况,我认为您可以使用反射来实现这一点。
示例代码:
class PlayerData
{
public ulong id;
public string name;
public int kills;
public int deaths;
}
object getStats(ulong uid, string stat)
{
var player = BasePlayer.FindByID(uid);
PlayerData data = PlayerData.Find(player);
object value = data.GetType().GetProperty(stat).GetValue(data, null);
return value;
}
- 2 回答
- 0 关注
- 147 浏览
添加回答
举报
0/150
提交
取消