2

@ifRazor ビューでオブジェクト グラフを 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に同等のものはありますか?

4

2 に答える 2