Я унаследовал некоторый код MVC от другого разработчика.
Существует статический класс, называемый DataCache, который содержит множество методов, примерно так:
public static IEnumerable<EntityFieldsList> UserGroupsFields()
{
if (Cache["userGroupFields"] is List<EntityFieldsList> userGroupFields) return userGroupFields;
...some code...
Cache.Set("userGroupFields", userGroupFields, policy);
return userGroupFields;
}
Я не понимаю, как работает эта первая строка.
Как переменная userGroupFields
объявляется как часть сравнения IS
?
И как же тогда его значение сразу же возвращается в той же строке? Конечно, это всегда будет null
?