作者abc95007 (别理我)
看板C_Sharp
标题[问题] method 代入 Attributes
时间Fri Nov 9 10:58:27 2018
请问要如何从 method 去带入 class 的属性?
如以下范例
感谢~
class person
{
public string weight = "50";
public string height = "150";
}
class Program
{
// 由 item 可以选择 weight或是 height
public void printItemValue(person p, string item)
{
Console.WriteLine(p.item);
}
static void Main(string[] args)
{
person A = new person();
person B = new person();
person C = new person();
person D = new person();
List<person> persons = new List<person>() { A , B, C, D};
foreach (person p in persons)
{
printItemValue(p, "weight");
}
}
}
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 180.217.96.219
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_Sharp/M.1541732312.A.333.html
1F:推 J002: Constrcutor ? 11/09 11:10
2F:→ testPtt: p.GetType().GetProperty(propertyName).GetValue(p,null 11/09 12:22
3F:→ ATPS4869: member expressions 11/09 12:23
4F:→ abc95007: 感谢 已解决 11/09 13:24
5F:→ jass970991: 建议不要 一般使用上很少用到需要解偶合这麽彻底的例 11/09 14:49
6F:→ jass970991: 子 而且IDE还不一定找的到 不考虑多加一个方法去返回 11/09 14:49
7F:→ jass970991: 你要的数值吗? 11/09 14:49
8F:推 jass970991: 有点误会你的意思了 但我还是建议你 不要这样写 你这 11/09 19:26
9F:→ jass970991: 样会让耦合度变高 不是好事 最好还是弄个方法出来 11/09 19:26