這篇文章主要講解了“C#泛型方法中反射常用方法有哪些”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“C#泛型方法中反射常用方法有哪些”吧!
創(chuàng)新互聯(lián)主要從事做網(wǎng)站、成都網(wǎng)站制作、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)興山,10年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18980820575
C# 泛型方法中反射常用方法使用的:因?yàn)楣舱Z言運(yùn)行庫 (CLR) 能夠在運(yùn)行時(shí)訪問泛型類型信息,所以可以使用反射獲取關(guān)于泛型類型的信息,方法與用于非泛型類型的方法相同。在 .NET Framework 2.0 中, Type 類增添了幾個(gè)新成員以啟用泛型類型的運(yùn)行時(shí)信息。System.Reflection.Emit 命名空間還包含支持泛型的新成員。
C# 泛型方法中反射常用方法之System.Type成員
◆IsGenericType
如果類型為泛型,則返回 true。
◆GetGenericArguments
返回 Type 對(duì)象數(shù)組,這些對(duì)象表示為構(gòu)造類型提供的類型變量,或泛型類型定義的類型參數(shù)。
◆GetGenericTypeDefinition
返回當(dāng)前構(gòu)造類型的基礎(chǔ)泛型類型定義。
◆GetGenericParameterConstraints
返回表示當(dāng)前泛型類型參數(shù)約束的 Type 對(duì)象的數(shù)組。
◆ContainsGenericParameters
如果類型或其任意封閉類型或方法包含沒有被提供特定類型的類型參數(shù),則返回 true。
◆GenericParameterAttributes
獲取 GenericParameterAttributes 標(biāo)志的組合,這些標(biāo)志描述當(dāng)前泛型類型參數(shù)的特殊約束。
◆GenericParameterPosition
對(duì)于表示類型參數(shù)的 Type 對(duì)象,獲取類型參數(shù)在聲明該類型參數(shù)的泛型類型定義或泛型方法定義的類型參數(shù)列表中的位置。
◆IsGenericParameter
獲取一個(gè)值,該值指示當(dāng)前 Type 是表示泛型類型定義的類型參數(shù),還是泛型方法定義的類型參數(shù)。
◆IsGenericTypeDefinition
獲取一個(gè)值,該值指示當(dāng)前 Type 是否表示可以用來構(gòu)造其他泛型類型的泛型類型定義。如果類型表示泛型類型的定義,則返回 true。
◆DeclaringMethod
返回定義當(dāng)前泛型類型參數(shù)的泛型方法;如果類型參數(shù)不是由泛型方法定義的,則返回空值。
◆MakeGenericType
用類型數(shù)組的元素替代當(dāng)前泛型類型定義的類型參數(shù),并返回表示結(jié)果構(gòu)造類型的 Type 對(duì)象。
此外, MethodInfo 類中還添加了新成員以啟用泛型方法的運(yùn)行時(shí)信息。
C# 泛型方法中反射常用方法之System.Reflection.MemberInfo成員
◆IsGenericMethod
如果方法為泛型,則返回 true。
◆GetGenericArguments
返回 Type 對(duì)象數(shù)組,這些對(duì)象表示構(gòu)造泛型方法的類型變量,或泛型方法定義的類型參數(shù)。
◆GetGenericMethodDefinition
返回當(dāng)前構(gòu)造方法的基礎(chǔ)泛型方法定義。
◆ContainsGenericParameters
如果方法或其任意封閉類型包含沒有被提供特定類型的任何類型參數(shù),則返回 true。
◆IsGenericMethodDefinition
如果當(dāng)前 MethodInfo 表示泛型方法的定義,則返回 true。
◆MakeGenericMethod
用類型數(shù)組的元素替代當(dāng)前泛型方法定義的類型參數(shù),并返回表示結(jié)果構(gòu)造方法的 MethodInfo 對(duì)象。
感謝各位的閱讀,以上就是“C#泛型方法中反射常用方法有哪些”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)C#泛型方法中反射常用方法有哪些這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!