Почему условный оператор ( ?:
) не работает при использовании с двумя типами, которые наследуются от одного базового типа?
Пример, который у меня есть:
ActionResult foo = (someCondition)?
RedirectToAction("Foo","Bar") :
Redirect(someUrl);
Где длинная форма работает нормально:
ActionResult foo;
if(someCondition)
{
foo = RedirectToAction("Foo","Bar");
}
else
{
foo = Redirect(someUrl);
}
Оба возвращаемых типа, RedirectToRouteResult
и RedirectResult
, наследуются от ActionResult
. ].