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