는 자료로 클래스가 인터페이스 디자인을 기반으로 :C# 일반적인 방법
public abstract class DataObjectEntityItemBase
{ }
파생 클래스 :
internal void FetchTabSectionDataObjectEntityByParentItem<T1>(
ITabSectionManager dataObjectEntityContainerOwner,
T1 parentDataObjectEntityItem)
where T1 : DataObjectEntityItemBase, ISupportsTabularDataObjectEntityContainer
{ }
문제 코드 내가 원하는 :
public class CatalogDataObjectEntityItem : DataObjectEntityItemBase, ISupportsTabularDataObjectEntityContainer
{ }
이 방법을 가지고
FetchTabSectionDataObjectEntityByParentItem
:
로 전화하십시오.
오류 :
Error CS0311 The type ISupportsTabularDataObjectEntityContainer cannot be used as type parameter 'T1' in the generic type or method FetchTabSectionDataObjectEntityByParentItem(ITabSectionManager, T1)'. There is no implicit reference conversion from ISupportsTabularDataObjectEntityContainer DataObjectEntityItemBase refDoeItem is variable as DataObjectEntityItemBase type.
refDoeItem
이 DataObjectEntityItemBase
의 유형 변수입니다.
당신이 우리에게 관련된 모든 코드를 보여주지 않는다는 점을 제외하면 나는 오류 메시지가 꽤 분명하다고 생각 했을까? – MickyD
@MickyD, 내가 전화 할 때 : "FetchTabSectionDataObjectEntityByParentItem (refDoeItem.LinkedConfigurationObject as ITabSectionManager, refDoeItem as ISupportsTabularDataObjectEntityContainer);" "refDoeItem as ISupportsTabularDataObjectEntityContainer"가 "T1 : DataObjectEntityItemBase, ISupportsTabularDataObjectEntityContainer"제약 조건과 호환되지 않는 이유는 무엇입니까? 감사. – Tim
'refDoeItem'이란 무엇입니까? 아마'DataObjectEntityItemBase'가'ISupportsTabularDataObjectEntityContainer'를 구현했을 것입니다. – MickyD