Предположим, у нас есть иерархия интерфейсов: IBaseThing<T>
и IChildThing:IBase<ChildThing>
. Также есть два класса, как это:Наследование интерфейса и абстрактный метод переопределения
internal abstract class Base<T>
{
public abstract IBaseThing<T> Thing {get;}
}
и
internal class Concrete:Base<ChildThing>
{
public override IChildThing Thing
{
get
{
return GetChildThing();
}
}
}
Что будет происходить в качестве ниже:
'Бетон' не реализует унаследовали абстрактный член «Base. get '
Я хочу пропустить отливку (IChildThing)this.Thing
по всему классу Concrete
. Что я должен был делать?
'IChildThing: IBase' - невероятно вонючий интерфейс. Может быть, вы хотели 'ChildThing: IBase ' .. Не могу быть уверенным. –
nawfal
Неверное предположение nawfal. IThings не T. –
Реза, пожалуйста, отправьте полный пример (пока только то, что требуется) и прецедент u r после. Мы могли бы помочь вам лучше. Иначе все его предположения. – nawfal