Есть массив объектов класса Client. Массив приличный, порядка 100К строк
Внутри класса Client есть несколько полей которые высчитываются и в базе не хранятся.
Status высчитывается через внешний класс, т.к. еще есть другие классы где используется метод Define
пример
class Client
//эти поля в базе
decimal CurrentCashAmount
int Age
decimal LastYearCashAmount
decimal CurrentMonthExpenses
//эти поля динамически считаются
string Status = StatusDefinder.Define(CurrentCashAmount, LastYearCashAmount, CurrentMonthExpenses, Age)
static struct StatusDefinder
static string Define(CurrentCashAmount, LastYearCashAmount, CurrentMonthExpenses, Age)
{
if (Age > 25)
if (CurrentCashAmount > 3000000 && LastYearCashAmount > 3000000 && CurrentMonthExpenses > 50000)
return "Vip";
else
return "NonVip";
else
if (CurrentCashAmount > 4000000 && LastYearCashAmount > 4000000 && CurrentMonthExpenses > 70000)
return "Vip";
else
return "NonVip";
}
вопрос: как максимально быстро и с минимальными расходами сделать расчет статуса? struct\class\record readonly\static