我有一个只有一个属性的接口,如下所示
public interface IExtendable
{
Hashtable ExtendedProperties { get; set;}
}
我希望 setter 是私有的,但它不允许,因为它来自一个接口,并且我知道一切都应该在其中公开。
那么允许私人二传手的最佳做法是什么?
- 在这种情况下不要使用接口还是什么?
提前致谢,
您不能将私有设置器添加到接口。如果你想拥有一个私有的 setter,那么你的界面需要如下所示:
public interface IExtendable
{
Hashtable ExtendedProperties { get; }
}
在接口的实现中,您可以添加您的私有设置器。
private interface IExtendable
{
Hashtable ExtendedProperties { get; }
}
private class Extendable: IExtendable
{
Hashtable ExtendedProperties { get; private set; }
}