Включает ли новый класс TypeInfo
частных пользователей по умолчанию в свойствах «DeclaredXXX»?Являются ли частные члены включенными в объявленные свойства TypeInfo?
ответ
Он возвращается как частные, так и публичные члены. Однако только те, которые объявлены на этом уровне, любые унаследованные участники и т. Д. Не будут возвращены.
Как мы можем получить частные поля, если они наследуются? –
@ChrisKooken Возможно, вы захотите сделать рекурсивный поиск по каждому из базовых типов объекта (используя TypeInfo.BaseType) –
Если это Property
и не Field
он будет показывать частных пользователей в DeclaredProperties
public class Test
{
private string test; // will not be in DeclaredProperties
private string test2 { get; set; } // will be in DeclaredProperties
public int test3{ get; set; } // will be in DeclaredProperties
}
var result = typeof(Test).GetTypeInfo().DeclaredProperties;
Не можете ли вы просто написать несколько строк кода и проверить его самостоятельно? – MarcinJuraszek
Я могу, но никто не должен этого делать, поскольку это очень фундаментальный вопрос. Он не документирован в любом месте легко доступным, поэтому любой, кто хочет узнать, должен иметь код - sux, нет? – Alwyn