三元运算符中的C#逗号用法

三元运算符中的C#逗号用法,c#,if-statement,conditional-operator,C#,If Statement,Conditional Operator,是否有类似于C中的逗号运算符可以在C#中使用,也可以在下面使用 templateCode = myBoolFlag ? ((smsNotification.NewNumber = request.NewNumber), "NEWCARDSTR") : request.NewCardStatus == "L" || request.NewCardStatus == "S

是否有类似于C中的逗号运算符可以在C#中使用,也可以在下面使用

 templateCode = myBoolFlag ? ((smsNotification.NewNumber = request.NewNumber), "NEWCARDSTR")
                                       : request.NewCardStatus == "L" || request.NewCardStatus == "S" 
                                           ? "STRING1" 
                                           : "STRING2";

我强烈怀疑使用
if
语句会在这里产生更可读的代码。在条件运算符的一个路径中使用副作用对我来说似乎是个坏主意。如果您绝对希望表达式中出现副作用,可以使用局部函数并调用它。如果你那样做,天使当然会哭泣;C#没有逗号运算符(以及C++以外的大多数其他类似C的语言)是有原因的。嵌套的三元表达式也不是那么热门。分号不征税。