三元运算符错误
本文关键字:运算符 错误 三元 | 更新日期: 2023-09-27 18:15:54
我想转换这个如果,否则,如果,有人能帮我吗?
if (condition1)
response.Redirect(" some link");
else if (condition2)
response.Redirect("link 2");
我想转换上面的语句,但在最后显示错误,需要":"。还有别的办法吗?
LinkPurchase.PostBackUrl =((Condition)?string.Format("some link"):
(condition2)?string.Format("link 2));
不能重写为?:
运算符
你有一个if
- else if
,而不仅仅是if
- else
。
此外,您不会从Redirect
调用中获取返回值。
通常需要重写为?:
操作符的情况是:
if (condition)
something = Abc();
else
something = Xyz();
自然地使用:
something = condition ? Abc() : Xyz();
你不能这么做。
这里还有其他的答案告诉你?:运算符需要"else"部分,所以是的,第一个问题是你忽略了它。
但是,Response.Redirect
不返回任何内容,因此即使使用else部分也不能执行。
?:
是一个表达式,你不能(很容易地)用它来写语句。
坚持使用if
-语句