一种类型如何访问另一种类型属性的私有setter?

Ada*_*lor 1 c# access-modifiers

我只需要一种方法,使一个类的属性只能从另一个类(一种管理类)中"设置".

这在c#中甚至可能吗?

我的同事"可靠地"告诉我,我有一个设计缺陷,但我觉得在承认失败之前我至少应该问社区!

Dav*_*kle 6

不,在C#中以任何干净的方式实现这一点都是不可能的.你可能有一个设计缺陷;-)


Mar*_*ell 5

您可以使用internal修饰符,它允许同一程序集中的所有类型访问数据(如果使用[InternalsVisibleTo],则使用指定的程序集- 但不会:friendC#中没有等效项.

例如:

public string Foo {get; internal set;}
Run Code Online (Sandbox Code Playgroud)