假设我有一个类有两个字符串类型的属性
- 提案 1
- 提案2
并且有以下限制
- 如果 Prop2 值为“Test2”,则 Prop1 不能等于“Test1”
- 如果 Prop1 值为“Test11”,Prop2 不能等于“Test22”
- 如果 Prop2="Test222",则设置 Prop1="Test111"
定义值相互依赖的属性的最佳方法是什么,并且对一个属性所做的更改应该触发另一个属性的 setter 属性?
最佳答案
您需要在属性 setter 中添加验证。
string prop1;
string prop2;
string Prop1
{
get { return prop1;}
set
{
if (!( Prop2 == "Test2" && value == "Test1"))
{
Prop1 = value;
}
... Add other condition here
}
}
string Prop2
{
get { return prop1;}
set
{
// set Prop2 based on Prop1
}
}
关于c# - 如何定义相互依赖的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14123998/