草庐IT

Reflection

全部标签

c# - 使用自定义属性获取程序集中的所有类型

是否有一种优雅的方法来获取程序集中具有自定义属性的所有类型?如果我要上课[Findable]publicclassMyFindableClass{}我希望能够在Assembly.GetTypes(...)返回的类型集合中找到它我可以用一个大的卑鄙的黑客来做到这一点,但我相信有人有更好的方法。 最佳答案 我认为您无法避免枚举程序集中的每个类型,检查属性,但您可以使用LINQ使查询更易于理解:Assemblyassembly=...vartypes=fromtypeinassembly.GetTypes()whereAttribute.

c# - 使用自定义属性获取程序集中的所有类型

是否有一种优雅的方法来获取程序集中具有自定义属性的所有类型?如果我要上课[Findable]publicclassMyFindableClass{}我希望能够在Assembly.GetTypes(...)返回的类型集合中找到它我可以用一个大的卑鄙的黑客来做到这一点,但我相信有人有更好的方法。 最佳答案 我认为您无法避免枚举程序集中的每个类型,检查属性,但您可以使用LINQ使查询更易于理解:Assemblyassembly=...vartypes=fromtypeinassembly.GetTypes()whereAttribute.

c# - 不使用 GetMethods 获取泛型方法

我想获取方法System.Linq.Queryable.OrderyBy(theIQueryablesource,Expression>keySelector)方法,但我一直想出空值。vartype=typeof(T);varpropertyInfo=type.GetProperty(group.PropertyName);varpropertyType=propertyInfo.PropertyType;varsorterType=typeof(Func).MakeGenericType(type,propertyType);varexpressionType=typeof(Expr

c# - 不使用 GetMethods 获取泛型方法

我想获取方法System.Linq.Queryable.OrderyBy(theIQueryablesource,Expression>keySelector)方法,但我一直想出空值。vartype=typeof(T);varpropertyInfo=type.GetProperty(group.PropertyName);varpropertyType=propertyInfo.PropertyType;varsorterType=typeof(Func).MakeGenericType(type,propertyType);varexpressionType=typeof(Expr

c# - 使用反射从类创建数据表?

我刚刚了解了泛型,我想知道我是否可以使用它从我的类中动态构建数据表。或者我可能忽略了这里的重点。这是我的代码,我要做的是从我现有的类创建一个数据表并填充它。然而,我陷入了思考过程。usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Reflection;usingSystem.Data;namespaceGenerics{publicclassDog{publicstringBreed{get;set;}publicstringName{get;set;}pu

c# - 使用反射从类创建数据表?

我刚刚了解了泛型,我想知道我是否可以使用它从我的类中动态构建数据表。或者我可能忽略了这里的重点。这是我的代码,我要做的是从我现有的类创建一个数据表并填充它。然而,我陷入了思考过程。usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Reflection;usingSystem.Data;namespaceGenerics{publicclassDog{publicstringBreed{get;set;}publicstringName{get;set;}pu

c# - 如何使用反射来判断一个类是否是内部类?

正如标题所说,你如何使用反射来检查一个类定义是否被定义为内部?“typeof(...)”返回下面显示的某些属性,但不返回类是否定义为内部类。在谷歌上查看,但我能找到的是很多关于使用反射运行内部或protected方法的文章。在这种情况下,我感兴趣的不是方法,而是类定义。vartype=typeof(Customer);Assert.IsTrue(type.IsClass);Assert.That(type.IsAbstract,Is.EqualTo(isAbstract));Assert.That(type.IsPublic,Is.EqualTo(isPublic));Assert.T

c# - 如何使用反射来判断一个类是否是内部类?

正如标题所说,你如何使用反射来检查一个类定义是否被定义为内部?“typeof(...)”返回下面显示的某些属性,但不返回类是否定义为内部类。在谷歌上查看,但我能找到的是很多关于使用反射运行内部或protected方法的文章。在这种情况下,我感兴趣的不是方法,而是类定义。vartype=typeof(Customer);Assert.IsTrue(type.IsClass);Assert.That(type.IsAbstract,Is.EqualTo(isAbstract));Assert.That(type.IsPublic,Is.EqualTo(isPublic));Assert.T

c# - 动态创建方法,并执行它

背景:我想在C#中定义几个static方法,并从这些方法之一生成IL代码作为字节数组,在运行时(在客户端上)选择,然后通过网络将字节数组发送到在从字节数组重新生成IL代码后,应该在另一台机器(服务器)上执行它。我的尝试:(POC)publicstaticclassExperiment{publicstaticintMultiply(inta,intb){Console.WriteLine("Arguments({0},{1})",a,b);returna*b;}}然后我得到方法体的IL代码,如:BindingFlagsflags=BindingFlags.Public|BindingF

c# - 动态创建方法,并执行它

背景:我想在C#中定义几个static方法,并从这些方法之一生成IL代码作为字节数组,在运行时(在客户端上)选择,然后通过网络将字节数组发送到在从字节数组重新生成IL代码后,应该在另一台机器(服务器)上执行它。我的尝试:(POC)publicstaticclassExperiment{publicstaticintMultiply(inta,intb){Console.WriteLine("Arguments({0},{1})",a,b);returna*b;}}然后我得到方法体的IL代码,如:BindingFlagsflags=BindingFlags.Public|BindingF