我只需要一种方法,使一个类的属性只能从另一个类(一种管理类)中"设置".
这在c#中甚至可能吗?
我的同事"可靠地"告诉我,我有一个设计缺陷,但我觉得在承认失败之前我至少应该问社区!
不,在C#中以任何干净的方式实现这一点都是不可能的.你可能有一个设计缺陷;-)
您可以使用internal
修饰符,它允许同一程序集中的所有类型访问数据(如果使用[InternalsVisibleTo]
,则使用指定的程序集- 但不会:friend
C#中没有等效项.
例如:
public string Foo {get; internal set;}