我得到Class1
和Class2
,他们都有Class3
的实例,其中包含属性MyName
...是否可以隐藏属性MyName
Class3
中的Class1
个实例,仅在Class2
中显示?
谢谢。
答案 0 :(得分:1)
我建议您从MyName
移除Class3
,然后创建一个Class4
,其源自Class3
并拥有属性MyName
。创建一个Class4
的实例,您可以在其中显示"显示"这个属性和Class3
的一个实例,你想要隐藏"它。
答案 1 :(得分:0)
创建两个实现相同接口的类。
public class Class3 : IClass
{
}
public class Class4 : IClass
{
public string MyName{get;set;}
}
public class Class1
{
IClass _IClass;
public Class1(IClass class)
{
this._IClass = class;
}
}
public class Class2
{
IClass _IClass;
public Class2(IClass class)
{
this._IClass = class;
}
}
当你创建Class1的实例时,Class2注入了相关的实现。
Class1 class1 = new Class1(new Class3());
Class2 class2 = new Class2(new Class4());