良い一日、
コレクションを表すクラスがあります。コレクションには、Type
各要素のメタデータオブジェクトのデータ型を指定できるtypeのプロパティがあります。要素がコレクションに追加されるたびに、割り当てられたメタデータオブジェクトの新しいインスタンスがActivator.CreateInstance(Type type)
コレクションクラス内から作成されます。
必要なのは、メタデータオブジェクトの型を特定のインターフェイスを実装する型に制限することです。例:
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
}
このようなことは可能ですか?
すべての貢献者に事前に感謝します。ありとあらゆるご意見に感謝いたします。
よろしくお願いします、私