Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.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# 如何调用返回泛型类型的泛型方法?_C#_Asp.net Mvc_Generics_Reflection - Fatal编程技术网

C# 如何调用返回泛型类型的泛型方法?

C# 如何调用返回泛型类型的泛型方法?,c#,asp.net-mvc,generics,reflection,C#,Asp.net Mvc,Generics,Reflection,真的被这个问题难住了, 在单独的页面上有网格,所有这些网格都保留对象的列表,所有行在行的末尾都有编辑按钮,并尝试使用动态方法在按下编辑按钮时返回单个对象 所以我添加了一个类似这样的通用方法(可能是错误的,请纠正我),只是尝试在这个方法中点击断点,这就是为什么现在没有包含任何内容的原因 public T GetItem<T> (int ID) { Type _type = typeof(T); object result = null; //s

真的被这个问题难住了,

在单独的页面上有
网格
,所有这些网格都保留对象的
列表
,所有行在行的末尾都有编辑按钮,并尝试使用动态方法在按下编辑按钮时返回单个对象

所以我添加了一个类似这样的
通用方法
(可能是错误的,请纠正我),只是尝试在这个方法中点击断点,这就是为什么现在没有包含任何内容的原因

public T GetItem<T> (int ID) {
       Type _type = typeof(T);
       object result = null;
       //some code
       return (T)result;
}
例外情况是

中发生“System.Reflection.TargetException”类型的异常 mscorlib.dll,但未在用户代码中处理

其他信息:对象与目标类型不匹配


我错过了什么,什么东西不匹配,不明白。从现在开始谢谢。

您应该对包含该方法的类型调用该方法,以便:

object classInstance = Activator.CreateInstance(_type, null);
应改为:

object classInstance = Activator.CreateInstance(baseService, null);

应在包含该方法的类型上调用该方法,以便:

object classInstance = Activator.CreateInstance(_type, null);
应改为:

object classInstance = Activator.CreateInstance(baseService, null);

我不明白。。。这两个独立的代码块是如何关联的?它们之间没有调用一个异常错误的复制/粘贴。更新了@KritnerI,我认为这与从服务的客户端调用泛型方法有关。您使用的是哪种服务技术?您有两种类型:\类型和baseService,baseService有方法GetName,但您从\类型的实例调用它。@AlyEl Haddad服务只是一个类名,而不是web服务。只是增加了实体的独立功能。我不明白。。。这两个独立的代码块是如何关联的?它们之间没有调用一个异常错误的复制/粘贴。更新了@KritnerI,我认为这与从服务的客户端调用泛型方法有关。您使用的是哪种服务技术?您有两种类型:\类型和baseService,baseService有方法GetName,但您从\类型的实例调用它。@AlyEl Haddad服务只是一个类名,而不是web服务。刚刚添加到实体的独立功能中。很好!我错过了,真是太棒了!我错过了。