좋은 날,제한된 속성 유형
나는 컬렉션을 나타내는 클래스가 있습니다. 컬렉션에는 각 요소의 메타 데이터 객체의 데이터 유형을 지정할 수있는 Type
유형의 속성이 있습니다. 요소가 콜렉션에 추가 될 때마다 지정된 메타 데이터 오브젝트의 새 인스턴스가 콜렉션 클래스에서 Activator.CreateInstance(Type type)
으로 작성됩니다.
내가 필요한 것은 메타 데이터 개체의 형식을 특정 intreface를 구현하는 형식으로 제한하는 것입니다. 예 :
publlic class Collection
{
public Type MetaDataType;
// other code
}
public class CollectionImplementation
{
// some properties
public CollectionImplementation()
{
Collection c = new Collection();
// valid assignment
c.MetaDataType = typeof(ValidMetaClass);
// invalid assignement
c.MetaDataType = typeof(InvalidMetaClass);
}
// some functions
}
public class ValidMetaClass : IMetaInterface
{
// valid meta class code
}
public class InvalidMetaClass
{
// invalid meta class code
}
public interface IMetaInterface
{
// interface code
}
이렇게 할 수 있습니까?
모든 참여자 께 미리 감사드립니다. 모든 입력에 감사드립니다.
종류와 관련, 나
어떤 언어입니까? – user12345613
그것은 C#입니다 - 내 CollectionImplementation 클래스 생성자의 서명이 잘못되어있는 것을 보았습니다 (이것이 왜 묻는 지 확실하지 않습니다) – that0th3rGuy