Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/274.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#-一个列表中的多个泛型类型II_C#_.net_Types_Generics - Fatal编程技术网

C#-一个列表中的多个泛型类型II

C#-一个列表中的多个泛型类型II,c#,.net,types,generics,C#,.net,Types,Generics,你能为我澄清一下这个问题吗 为什么最初定义的类很重要: public class Metadata<DataType> where DataType : struct { private DataType mDataType; } 数据类型为struct的公共类元数据 { 私有数据类型mDataType; } 是否因为IList成员必须共享某个公共对象类型 该公共类型必须与IList类型具有相同的名称,例如IList->派生自T,或IList->派生自Interfa

你能为我澄清一下这个问题吗

为什么最初定义的类很重要:

public class Metadata<DataType> where DataType : struct 
{ 
   private DataType mDataType; 
}
数据类型为struct的公共类元数据 { 私有数据类型mDataType; }
  • 是否因为IList成员必须共享某个公共对象类型
  • 该公共类型必须与IList类型具有相同的名称,例如IList->派生自T,或IList->派生自InterfaceT,IT
  • 谢谢和问候,
    米兰。

    每个泛型类型实例化都是一个新类型。i、 e
    元数据
    元数据
    是不同的类型。 编译器生成如下类型(使用.Net REFECTOR检查)


    因此不能声明异构类型的列表。只能声明一种类型的列表。因此,有必要使所有通用元数据类都从抽象类或接口继承。

    请直接说明问题,而不是指向问题?
    Namespace.Metadata`1[[System.Int32, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]