Inline If in Razor View

2019-04-22 20:04发布

问题:

In my controller, I have and inline If statement:

ViewBag.NameSortParam = If(String.IsNullOrEmpty(sortOrder), "Name desc", "")

In my view, I can't seem to use inline if:

@Code
    If(True, true, true)
End code

It says, "If must end with matching End If." Why can't I use an inline if here? Thanks.

回答1:

Try

@Code
    @(If(True, true, true))
End Code


回答2:

You could use something like this:

   @(true? "yes": "no") 


回答3:

You can do an inline if in vb.net like this:

@(If(testExpression, TruePart, FalsePart))


回答4:

You could use IIf, you don't need to clutter your code with @Code sections:

@IIf(String.IsNullOrEmpty(sortOrder), "Name desc", "")