3

私は既存のストアド プロシージャを持っており、それが呼び出されると、テーブルにその週のサッカーの試合が設定されます。

次に、ユーザーはドロップダウンから各フィクスチャの予測を行い、モデル バインディングを使用してすべての予測をまとめて挿入したいと考えています。

現在頭痛の種となっているビューから、関連するコードを以下に示しました。

@model IEnumerable<PPLMVCNewOne.Models.sp_getMakeYourPredictions_Result>


@for (int i = 0; i < Model.Count(); i++)
    {
    <tr>
        <td>
            @Html.DisplayFor(m => m.ElementAt(i).Home_Team)

私がやろうとしているのは、インデックスを追加して、アクション結果内でバインドをモデル化できるようにすることです。

次のエラーが発生するのは、html ヘルパー行です。

クエリの結果を複数回列挙することはできません。

誰でも正しい方向へのポインタを教えてもらえますか?

4

3 に答える 3

1

ToList() を呼び出して、アクションが IEnumerable ではなく IList を返すようにします。

ビューをこれに変更します

@model IList<PPLMVCNewOne.Models.sp_getMakeYourPredictions_Result>

@for (int i = 0; i < Model.Count(); i++)
{
<tr>
    <td>
        @Html.DisplayFor(m => m.ElementAt(i).Home_Team)

...
于 2013-04-11T20:13:18.040 に答える
0

アイテムのリストを IEnumerable として取得しているときに、このエラーが発生し続けました。データベースから正しい情報が返されているかどうかを手動で確認したかったので、ブレークポイントに到達したときに IEnumerable の内容を調べました。知らないうちに、回答を読むまで、処理中のすぐ下に再度列挙されないようにしていました。

于 2014-02-24T15:06:48.973 に答える