【发布时间】:2015-04-19 17:41:18
【问题描述】:
我想要实现的很简单,我有一个接口IDatasource,它有一个属性叫DatasourceSettings
public interface IDatasource
{
DatasourceSettings DatasourceSettings { get; set; }
}
实现类如下所示
public class TestDatasource : IDatasource
{
public DatasourceSettings IDatasource.DatasourceSettings { get { return DatasourceSettings; } set { DatasourceSettings = (TestDatasourceSettings)value; } }
public TestDatasourceSettings DatasourceSettings { get; set; }
}
您可能会看到,该属性首先是显式实现的,它应该返回类本身的DatasourceSettings 属性
等等,这就是我想要实现的目标
var ds = new TestDatasource();
if (ds.DatasourceSettings is TestDatasourceSettings &&
((IDatasource)ds).DatasourceSettings is DatasourceSettings)
{
// should be true
}
我得到的错误:
The modifier 'public' is not valid for this item
那么这里出了什么问题?
【问题讨论】:
标签: c# interface member-hiding