У меня есть проблема с System.Reflection. Пожалуйста, смотрите прилагаемый код:Проблема с system.reflection, GetFields не возвращает все
class Program
{
public static FieldInfo[] ReflectionMethod(object obj)
{
var flags = BindingFlags.Instance | BindingFlags.Static | BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.DeclaredOnly;
return obj.GetType().GetFields(flags);
}
static void Main()
{
var test = new Test() { Id = 0, Age = 12, Height = 24, IsSomething = true, Name = "Greg", Weight = 100 };
var res = ReflectionMethod(test);
}
}
public class Test
{
public int Id { get; set; }
public string Name { get; set; }
public int Age { get; set; }
public bool IsSomething { get; set; }
public int Weight { get; set; }
public int Height { get; set; }
public int CalculationResult => Weight * Height;
public Test()
{
}
}
Кажется, что метод GetFields не получает вычисленное CalculationResult собственности. Я предполагаю, что мне нужен другой флаг, но я не могу понять, какой он есть.
Спасибо заранее, и я с радостью предоставит вам дополнительную информацию, если это необходимо.
Да, это имеет смысл, и это тоже работает, огромное спасибо! – ASMoncrieff
и спасибо, что ознакомили меня со словом «синтаксический сахар», я буду использовать его больше в разговоре – ASMoncrieff