我是新來的反射和打磚牆試圖瞭解類型。反射基礎知識
Assembly是什麼意思?Assembly.GetTypes()
返回什麼?另外,如果您從GetTypes()
命令中獲得的「類型」上調用類似GetGenericArguments()
的東西,那麼該做什麼?
謝謝
我是新來的反射和打磚牆試圖瞭解類型。反射基礎知識
Assembly是什麼意思?Assembly.GetTypes()
返回什麼?另外,如果您從GetTypes()
命令中獲得的「類型」上調用類似GetGenericArguments()
的東西,那麼該做什麼?
謝謝
Assembly.GetTypes()
調用返回在組件中定義的所有類型和接口。
調用Type.GetGenericArguments()
返回爲泛型指定的所有泛型參數。這可能不是最清晰的解釋,一個例子將有助於:
var type1 = typeof(Func<>);
type1.GetGenericArguments(); // [ typeof(TResult) ]
var type2 = typeof(Func<string>);
type2.GetGenericArguments(); // [ typeof(String) ]
var type3 = typeof(Tuple<string, int, bool>);
type3.GetGenericArguments(); // [ typeof(String), typeof(Int32), typeof(Boolean) ]
大會是在這種情況下的dll或exe文件。
Assembly.GetTypes()返回該程序集中的所有類型。
如果你有一個泛型類型
public class MyType<T, V>
{
}
Type.GetGenericArguments返回T
和V
。
程序集包含運行的代碼,或存儲有關對象的信息,即具有方法/屬性/事件的類/結構。
類型是描述其他類的類。
http://msdn.microsoft.com/en-us/library/system.type%28v=vs.71%29.aspx
在.NET的組件是由編譯類庫(和其他)項目類型
Assembly.GetTypes()
返回該組件的所有類型的陣列產生的* .dll文件,也就是說所有的類&構件內的結構。
進一步閱讀
你應該開始閱讀有關'reflection' http://www.codeguru.com/csharp/csharp/cs_misc/reflection/article一些文檔。 PHP/c4257 – 2012-02-17 16:03:43