作りたいもの
最初は画面上に入力フォームとsubmitボタンのみが表示されており、CSVファイルのフルパスを入力すると下に中身が表示される、というものを作りたいです。
現在中身を取得してListを返すところまではできていますが、HTMLで躓いています。
起こっていること
HTMLにCSVファイルフルパスを入力し、submitでCSVの中身がList<Model>型で返ってくるようにしています。
そしてModelの中を取り出して表示したいのですが、実行すると@foreach文のところでSystem.NullReferenceExceptionが発生してしまい、htmlが表示されません。
やりたいこと
おそらく最初はListが空なのでこのエラーが出ているのですが、Listが空の時はタグ自体を表示しないように、Listに値が返ってきたらそれを表示できるようにしたいです。
または、それに近しい方法を教えていただきたいです。
HTML
1 2 <form action="hoge" method="post"> 3 <div> 4 <input type="text" name="csv_name" /> 5 <input type="submit" class="btn" /> 6 </div> 7 </form> 8 <p> 9 @foreach (var item in Model) 10 { 11 @Html.DisplayNameFor(model => model.a) 12 @Html.DisplayNameFor(model => model.b) 13 @Html.DisplayNameFor(model => model.c) 14 @Html.DisplayNameFor(model => model.d) 15 @Html.DisplayNameFor(model => model.e) 16 @Html.DisplayNameFor(model => model.f) 17 } 18 </p>
error
1例外がスローされました: 'System.NullReferenceException' (App_Web_bgyizjto.dll の中) 2オブジェクト参照がオブジェクト インスタンスに設定されていません。 3
よろしくお願いいたします。
環境:
windows10 64bit
visual studio 2019
ASP.NET webアプリケーション MVC
.NET Framework 4.7.2
C#
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/12/14 08:26