请教,根据结构体成员名赋值问题

snowman1101 2020-01-31 01:42:59
比如有这样一个class
public class WORD
{
public INFO word1;
public INFO word2;
}
public class INFO
{
public string info1 ;
public string info2 ;
public Color color ;
}

比如我得到一组word1的值,
key="word1";
info1 ="1";
info2 = "2";
color = color
我怎么才能通过这个 key 去给INFO赋值呢?
上面的class只是我写的一个列子,可以增加内容
...全文
361 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
threenewbee 2020-02-01
  • 打赏
  • 举报
回复
可以用 dynamic obj = new ExpandObject(); obj["word1"] = new Info() { info1 = "1", info2 = "2", Color = xxx }; 访问: var info = (Info)obj.word1; Console.WriteLine(info.info1);
snowman1101 2020-01-31
  • 打赏
  • 举报
回复
自己解决了,不过感觉不太方便
            PropertyInfo property = typeof(WORD).GetProperty("word1");
            INFO info = (INFO)property.GetValue(word);
            info.info1 = "1";
            info.info2 = "2";
          
            property.SetValue(word, info);

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧