C# 具有多个类型的泛型类

C# 具有多个类型的泛型类,c#,class,generics,generic-list,C#,Class,Generics,Generic List,这是否可以创建具有多个未知类型的类? 前任: 我认为: class MyClass <Type1, Type2, Type3, TResponse > { public TResponse Run() { //operation on Type1, Type2, Type3 } } class-MyClass { 公共响应运行() { //类型1、类型2、类型3上的操作 } } 我的问题是,这是否可以传递一些类型的how列表,然后在循环中使用它们?然后想知道怎么称

这是否可以创建具有多个未知类型的类? 前任: 我认为:

class MyClass <Type1, Type2, Type3, TResponse >
{

public TResponse Run()
{
     //operation on Type1, Type2, Type3
}


}
class-MyClass
{
公共响应运行()
{
//类型1、类型2、类型3上的操作
}
}

我的问题是,这是否可以传递一些类型的how列表,然后在循环中使用它们?然后想知道怎么称呼它

是的,您可以定义具有多种类型的泛型类,编译以下代码。但是,为了对这些类型执行操作,通常需要对这些类型进行定义

public class MyClass <Type1, Type2, Type3, TResponse>
{
    public TResponse Run()
    {
        return default(TResponse);
    }
}
公共类MyClass
{
公共响应运行()
{
返回默认值(t响应);
}
}

但是,泛型类型是显式指定的,因此无法指定类所具有的泛型类型列表

如果所有类都使用接口或抽象类公开相同的功能,这是可能的。一旦有了基类型,我们就可以创建具有多个类型参数的泛型类。在泛型类中,我们可以调用任何公开的功能。

传递什么类型列表?你的问题目前还不清楚。如果您能展示如何调用该方法以及预期结果,这会有所帮助。如果您有多个不同类型的类,实现同一个接口,您是否能够实现您尝试执行的操作?对于.Net 4或更新版本,您还可以对“未知”类型使用
dynamic
关键字。这在您的上下文中可用吗(而不是泛型)?您试图解决什么问题?也许有更好的办法。