Предположим, у вас есть этот класс:
// this is c# btw
class Rewards {
public int property1 {get;set;}
public int property2 {get;set;}
public int property3 {get;set;}
}
и вы создали где-то экземпляр этого класса и обновили некоторые его значения
Rewards reward = new Rewards();
reward.property1 = 10000000000;
Теперь вам нужно получить Имя свойств, значения которых соответствуют определенным критериям (например, свойство, значение которого равно больше 0 -> в этом случае Property1 будет возвращено / помещено в массив
Как бы вы go об этом?
Моя попытка:
var allRewards = typeof(Rewards).GetProperties().ToList(); // this gets all the properties, but I'm not sure how the filter them with a Where query
Debug.Log(typeof(Rewards).GetProperty(allRewards[1].Name).GetValue(rewards))); // printing one of the values as a test - which works
Поэтому он должен выполнять итерацию по каждому свойству, выполнять определенные критерии и сохранять это свойство в списке, если оно прошло тест
Я понял, что могу перебрать список с помощью для l oop, но мне нужно решение с запросом Where