簡體   English   中英

Razor中C#表達式中的條件語句

[英]Conditional statement in c# expression in Razor

我怎么寫這個if語句

@if (camera.IsInStock)
{
    <span class="text-success" style="float:right">IN STOCK</span>
}
else
{
    <span class="text-danger" style="float:right">OUT OF STOCK</span>
}

表達如下:

@(camera.IsInStock ? "<span style='float:right' class='success'>IN STOCK</span>" : "<span style='float:right' class='danger'>OUT OF STOCK</span>")

我提供的表達式不起作用。 謝謝

當您嘗試在三元表達式中呈現HTML標記時,應使用Html.Raw方法,以使它不會被razor編碼為html。

@(camera.IsInStock ? 
        Html.Raw("<span style='float:right' class='text-success'>IN STOCK</span>") 
      : Html.Raw("<span style='float:right' class='text-danger'>OUT OF STOCK</span>"))

我個人更喜歡您的第一種方法,因為我覺得它更易讀。 您還可以考慮創建IsInStock標志的幫助程序方法,並返回所需的css類和所需的文本,甚至返回整個范圍標記。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM