好吧,我需要为许多属性重复相同的代码。我已经看到了Action
代表的例子,但它们在这里不太适合。
我想要这样的东西:(见下面的解释)
Dictionary<Property, object> PropertyCorrectValues;
public bool CheckValue(Property P) { return P.Value == PropertyCorrectValues[P]; }
public void DoCorrection(Property P) { P.Value = PropertyCorrectValues[P]; }
.
我想要一个包含许多属性及其各自“正确”值的字典。(我知道它没有很好地声明,但这就是想法)。属性不一定在我的类中,其中一些在不同程序集的对象中。
一种方法bool CheckValue(Property)
。这个方法必须access the actual value
的属性和compare to the correct value
。
和一个方法 a void DoCorrection(Property)
。这一个sets the property value
到正确的值。
请记住,我有许多这些属性,我不想为每个属性手动调用方法。我宁愿在foreach
声明中遍历字典。
因此,主要问题在标题中。
我试过了
by ref
,但属性不接受。我有义务使用
reflection
???或者是否有其他选择(如果我需要,也将接受反射答案)。无论如何我可以用
pointers
C# 制作字典吗?或者某种类型的任务,changes the value of variable's target
而不是changing the target to another value
?
谢谢您的帮助。