Я хочу выполнить оператор switch
для условного значения, в настоящее время мой оператор выглядит следующим образом:
switch (property)
{
case JToken token when (Schemas.IsNumericProperty(token)):
return token.ToObject<int>();
case JToken token when (Schemas.IsStringProperty(token)):
return token.ToObject<string>();
case JToken token when (Schemas.IsCollectionProperty(token)):
return token.ToObject<string[]>();
case JToken token when (Schemas.IsDependencyProperty(token)):
return token.ToObject<KeyValue[]>();
default:
return property.ToObject<object>();
}
Однако значение свойства уже равно JToken
, есть ли способочистить это, чтобы быть короткий код?Я знаю, что мог бы просто сделать серию if
заявлений, которые могли бы быть намного чище и эффективнее?
Спасибо за помощь!