3
我可以执行以下操作吗?使用反射类型为通用“T”
public static T Merge<T>()
{
object x = Activator.CreateInstance<T>();
//Do some stuff with x
return (T)x;
}
private static Type[] GetTypesInNamespace(Assembly assembly, string nameSpace)
{
return assembly.GetTypes().Where(
t => String.Equals(t.Namespace, nameSpace, StringComparison.Ordinal) &
!t.IsInterface).ToArray();
}
public static void Main()
{
Type[] typelist = GetTypesInNamespace(
Assembly.GetExecutingAssembly(), "Myapplication.Web.DomainObjects");
Parallel.ForEach(typelist, type =>
{
var task1 = Task.Factory.StartNew(() => Merge<type>());
// is it possible to do this way? Merge<type> ??
});
}
eeeeuuuuhmm和问题是什么?或者这是一个声明 – Nealv 2010-08-10 08:39:03
对不起,问题是在那里的代码作为comment.Ok让我解释一下,名称空间“Myapplication.Web.DomainObjects”包含一个自定义对象的列表。我不想一一命名它们并开始一个任务。而是使用反射来获取这些自定义对象并将其传递给合并 – Princeton 2010-08-10 08:43:06
最好是实际编辑问题并使其更清楚您实际要求的内容。 – 2010-08-10 08:51:15