@if
Razor ビューでオブジェクト グラフを null セーフな方法で (ガード ブロックを使用せずに) ナビゲートする方法はありますか?
たとえば、次のものがありますIndex.cshtml
。
@foreach (Store.Models.Product product in @Model)
{
<tr>
<td>@product.Id</td>
<td>@product.ProductName</td>
<td>@String.Format("{0:C}", @product.Price)</td>
<td>@product.Quantity</td>
@if (@product.Category != null)
{
<td>@product.Category.CategoryName</td>
}
else
{
<td></td>
}
</tr>
}
すべての製品にカテゴリがあるわけではありません。そうでない場合Product.Category
は null です。
NullReferenceException
私が本当にやりたいことは、オブジェクト グラフを安全にナビゲートでき、ビューを爆破すること を心配する必要がないことです。
Groovy/Grails では、 Safe Navigation Operatorの使用に慣れており、次のようなことを行います。
<td>@product?.Category?.CategoryName</td>
もちろん、それは Razor では機能しませんでした。
Razorに同等のものはありますか?