Asp.Net MVC Viewページには「GetEnumerator」の共通定義は含まれていません
5185 ワード
'/'アプリケーションのサーバーエラー。
コンパイルエラー
説明:このリクエストにサービスを提供するために必要なリソースをコンパイル中にエラーが発生しました.次の特定のエラーの詳細を確認し、ソースコードを適切に変更してください.コンパイラエラーメッセージ:CS 1579:「Web.Models.Book」には「GetEnumerator」の共通定義が含まれていないため、foreach文は「Web.Models.Book」タイプの変数ソースエラーには使用できません.
16: <td> </td>
17: </tr>
18: @foreach (var item in Model)
19: {
20: <tr>
Viewコード:
@model List<Web.Models.Book>
@{
ViewBag.Title = "Index";
}
<h2>Index</h2>
@Html.ActionLink("add", "add", "book")
<br />
<br />
<table>
<tr>
<td>ID</td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
@foreach (var item in Model)
{
<tr>
<td>@item.ID</td>
<td>@item.name</td>
<td>@item.price</td>
<td>@item.time</td>
<td> </td>
</tr>
}
</table>
解決方法:
エラーは最初の行です.デフォルトのモデルではforeach機能が使用できないので、変換して、最初の行を以下のコードに変更しなければなりません.
@model List
または
@model ICollection
なぜか歩いてhttp://www.cnblogs.com/flyfish2012/archive/2013/01/22/2871273.html
16: <td> </td>
17: </tr>
18: @foreach (var item in Model)
19: {
20: <tr>
@model List<Web.Models.Book>
@{
ViewBag.Title = "Index";
}
<h2>Index</h2>
@Html.ActionLink("add", "add", "book")
<br />
<br />
<table>
<tr>
<td>ID</td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
@foreach (var item in Model)
{
<tr>
<td>@item.ID</td>
<td>@item.name</td>
<td>@item.price</td>
<td>@item.time</td>
<td> </td>
</tr>
}
</table>
または
@model ICollection
なぜか歩いてhttp://www.cnblogs.com/flyfish2012/archive/2013/01/22/2871273.html