Я обновляю систему и просматриваю код другого разработчика (ASP.NET на C #).
Я обнаружил следующее:
private ReferralSearchFilterResults ReferralsMatched
{
get
{
if (Session[SESSION_REFERRAL_SEARCHFILTERRESULTS] == null || Session[SESSION_REFERRAL_SEARCHFILTERRESULTS].GetType() != typeof(ReferralSearchFilterResults))
return null;
else
return (ReferralSearchFilterResults)Session[SESSION_REFERRAL_SEARCHFILTERRESULTS];
}
set
{
if (value == null)
{
Session[SESSION_REFERRAL_SEARCHFILTERRESULTS] = value;
}
else if (value.GetType() == typeof(ReferralSearchFilterResults))
{
Session[SESSION_REFERRAL_SEARCHFILTERRESULTS] = value;
}
}
}
Проверяет тип на сеттер не нужен? Разумеется, если я установлю для свойства значение, отличное от объекта ReferralSearchFilterResults
, код даже не будет компилироваться? Я что-то упускаю или я прав, полагая, что этого можно достичь, просто используя :
set
{
Session[SESSION_REFERRAL_SEARCHFILTERRESULTS] = value;
}