2011-12-06 1 views
1

私のコードで会社のリストを返しています。最初の会社名としてページタイトルを設定するよう求められます。私は正常にそれを行うことができますが、問題はリストが空のときに表示されます。コードが例外をスローします。MVCアプリケーションのビューで空のリストを確認します

私はあなたが値を設定する前にnullをチェックするternary operatorを使用することができますasp.net 4.0、MVc3とエンティティフレームワーク4.1

@model List<% InvoiceSearchTool.Models.Invoices %> 

@{ 

    ViewBag.Title = Model.FirstOrDefault().Company; 
    Layout = "~/Views/Shared/_Layout.cshtml"; 
} 
+1

なぜあなたはビューを呼ぶだろうか?これは作成ビューですか? – Maess

答えて

3

を使用しています:

チェックリストがある場合ナル:リストが空の場合

ViewBag.Title = (Model != null) ? Model.FirstOrDefault().Company : ""; 

をチェック:

ViewBag.Title = (Model.Count() > 0) ? Model.FirstOrDefault().Company : ""; 

(これはおそらく、可能な場合のViewModel内、これを達成するために大いに役立つだろう)リストがnullの場合

+0

は動作しません....モデルがnullではないため、ここに空リストが含まれている可能性があります:( – 14578446

+0

リストが空であるかどうかを確認する別の可能性を追加しました –

+0

Rionmonsterのコメント – Hammerstein