gpt4 book ai didi

c# - 在 C# 2005 中动态获取/设置对象的属性

转载 作者:太空狗 更新时间:2023-10-30 00:06:45 25 4
gpt4 key购买 nike

我继承了一个代码库,并且正在编写一个小工具来为其更新数据库。该代码使用像 SubSonic 这样的数据访问层(但它是本土开发的)。对象的属性有很多,例如“id”、“templateFROM”和“templateTO”,但共有 50 个。

在屏幕上,我无法在各自的文本框中显示所有 50 个属性以供数据输入,因此我有一个包含所有可能属性的列表框和一个用于编辑的文本框。当他们在列表框中选择一个属性时,我用该属性对应的值填充文本框。然后我需要在他们完成编辑后更新属性。

现在我正在使用 2 个巨大的 switch case 语句。这对我来说似乎很愚蠢。有没有办法动态地告诉 C# 我想设置或获取什么属性?也许像:

entObj."templateFROM" = _sVal;

??

最佳答案

您需要为该任务使用 System.Reflection。

entObj.GetType().GetProperty("templateFROM").SetValue(entObj, _sVal, null);

这应该对你有帮助。

关于c# - 在 C# 2005 中动态获取/设置对象的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/531025/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com