我在代码中使用了两个数组:
var fields = typeof(MyDtoClass).GetProperties();
var fieldsOfDtoClass = typeof(MyDtoClass).GetFields(BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance);
但是我用它来生成一张表,并且可能不同步。我如何使用一个数组,但可以在一个位置获得属性,而在另一个位置获得此类标志?我应该查看GetMembers还是smth?任何帮助都非常感激
答案 0 :(得分:0)
使用班级名称
typeof(YourClass).GetMethod("METHOD_NAME");
typeof(YourClass).GetProperty("PROPERTY_NAME");
使用实例
yourInstance.GetType().GetMethod("METHOD_NAME");
yourInstance.GetType().GetProperty("PROPERTY_NAME");
要枚举所有属性
foreach (var property in typeof(YourClass)) {
Console.WriteLine(property);
}
使用Linq枚举它们的相同方法
typeof(YourClass).GetMethods()
.Select(method => method.Name == "GetType");