我有以下类型:
// incomplete class definition
public class Person
{
private string name;
public string Name
{
get { return this.name; }
}
}
我希望使用某种专用的控制器/构建器来创建和更新这种类型,但我希望它对其他类型保持只读。
该对象还需要在其控制器/构建器每次更新时触发一个事件。
总结一下,根据前面的类型定义骨架:
Person
只能由特定控制器实例化- 该控制器可以随时更新
Person
(name
字段)的状态 - 发生时需要向世界其他地方
Person
发送通知 - 所有其他类型应该只能读取
Person
属性
我应该如何实现这个?我在这里谈论的是控制器/构建器,但欢迎所有其他解决方案。
注意:我可以依赖internal
修饰符,但理想情况下我所有的东西都应该在同一个程序集中。