Che*_*rot 2 c# design-patterns
我想知道是否有任何模式可以解决这个问题:我有一组属性需要公开给几个类和其他类,它们应该只是readonly,类必须是公共的.
我不想使用反射或任何其他糟糕的性能制造者.
我知道我可以让他们成为RO并在课堂上实现逻辑,但我认为这不好.
有帮助吗?
在当前装配体内,您可以制作它internal
.
在当前组件之外,您可以做的最好的事情是通过它使特定组件可用[InternalsVisibleTo]
.
.NET不提供更细粒度的"朋友"访问.
class Person : IReadOnlyPerson {
public string Name { get; set; }
}
public interface IReadOnlyPerson {
string Name { get; }
}
Run Code Online (Sandbox Code Playgroud)
对那些应该进行r/o访问的类 - 使用 IReadOlyPerson