170 похожих чатов

Народ, подскажите пожалуйста А можно ли через рефлексию получить PropertyInfo в

такой иерархии:
interface IReport
{
}
interface IFileStorageBucketNaming
{
static abstract string Bucket { get; }
}
abstract class ReportBase
{
}
class ReportSomeBase<T> : ReportBase, IFileStorageBucketNaming
{
public static String Bucket {get;} = "BucketBase";
}
class Report1 : ReportSomeBase<int>
{

}

Вот как-нибудь можно через типа Report1 получить PropertyInfo на статическое свойство Bucket?
void Foo()
{
var type = typeof(Report1);
var bucketProperty = type.GetProperty(
"Bucket",
System.Reflection.BindingFlags.Static | System.Reflection.BindingFlags.Public);

string bucketValue = (string)bucketProperty.GetValue(null); // Тут падает...
}

2 ответов

6 просмотров

BindingFlags.FlattenHierarchy Specifies that public and protected static members up the hierarchy should be returned. Private static members in inherited classes are not returned. Static members include fields, methods, events, and properties. Nested types are not returned.

Bretbas- Автор вопроса

Похожие вопросы

Обсуждают сегодня

читать файл максимально быстро? странный вопрос))
zamtmn
53
Привет. Сразу скажу, что на C/C++/Rust я не пишу, но тем не менее возникла потребность дебага C/C++/Rust кода. Суть: есть серверное приложение, которое периодически ведёт себ...
ninekeem 🐳
4
А чего сейчас в моде вместо Error для эксепшенов? А то я тут внезапно узрел что он не рекомендуется :) У Try::Tiny какой-то совершенно ужасный синтаксис если надо конкретные э...
Denis F
17
или вы считаете муит дает знание?
супер_лох_3000 альфа версия
12
А кто такой мужчина в твоем понимании Азиз?
who?です 🐈
11
Ну значит тебе повезло, мы же про транк говорим оба?
Александр (Rouse_) Багель
11
всем привет! углубившись в плюсы и начав изучать реверсинг понял, что без асм'а никуда со своими высокоабстрактными представлениями начал изучать механизмы асма, и не совсем п...
9
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Всем ку. Подскажите, если задекларировал массив так: int arr[10] = {1, 2, 3, 4}, то в arr[4] будет мусор или нуль?
Sasha K
14
буквально один оставшийся вопрос при выполнении строчки mov eax, 5 операнд "5" будет присутствовать где-либо в памяти (любой), кроме как в памяти блока .code? подвопрос: как...
12
Карта сайта