我有一個接口具有另一個接口的屬性。無論如何,只要在使用中引用父接口,就會導出/提供/包含子接口。導出接口
//IBar.cs
namespace bar
{
interface IBar
{
public int BarProp { get; set; }
}
}
//IFoo.cs
namespace foo
{
using bar
interface IFoo
{
public IBar FooProp { get; set; }
}
}
//elsewhere.cs
namespace foo
{
//using bar //without this,
IFoo myFoo = new SomeClassThatImplementsIFoo();
myFoo.FooProp.BarProp //<-- BarProp is inaccessable here
}
在elsewhere.cs,我不得不IFoo的一個參考,但希望能夠訪問伊巴爾的元素,而無需包括引用和using語句來伊巴爾。無論如何設置IFoo,只要它被引用/包含,它也帶來IBAR一起乘坐?類似#include
的方式直接運行C. 如果您說「複製並粘貼IBar到IFoo.cs」,我會忽略你。
我猜測,因爲我從來沒有看到任何可以做到這一點的東西,答案可能是你不能在C#中做到這一點。
編輯:的文件IBar.cs和IFoo.cs是在單獨的組件
編輯:的接口是公開的,不是性能
對不起,我的意思是表明他們在不同的程序集以及不同的文件。 – 2011-01-06 19:48:22