0

エンティティ フレームワーク接続からデータを取得する LINQ クエリがあります。コントローラーからビューにデータを渡しています。コードを実行すると、「指定されたキャストが無効です」というエラーが表示されます。

これが私のLINQステートメントです

var MeltAreaInformation =
    new
    {
        Striko1 = (from item in db.tbl_dppITHr where item.ProductionHour >= SelectedDateDayShiftStart && item.ProductionHour <= SelectedDateDayShiftHr25End select item).Sum(x => x.Striko1) ?? 0,

              Striko2 =
             (from item in db.tbl_dppITHr
              where item.ProductionHour >= SelectedDateDayShiftStart && item.ProductionHour <= SelectedDateDayShiftHr25End
              select item).Sum(x => x.Striko2) ?? 0,

              Striko3 =
             (from item in db.tbl_dppITHr
              where item.ProductionHour >= SelectedDateDayShiftStart && item.ProductionHour <= SelectedDateDayShiftHr25End
              select item).Sum(x => x.Striko3) ?? 0,

              Striko4 =
             (from item in db.tbl_dppITHr
              where item.ProductionHour >= SelectedDateDayShiftStart && item.ProductionHour <= SelectedDateDayShiftHr25End
              select item).Sum(x => x.Striko4) ?? 0,

              Striko5 =
             (from item in db.tbl_dppITHr
              where item.ProductionHour >= SelectedDateDayShiftStart && item.ProductionHour <= SelectedDateDayShiftHr25End
              select item).Sum(x => x.Striko5) ?? 0,

              Induction1 =
             (from item in db.tbl_dppITHr
              where item.ProductionHour >= SelectedDateDayShiftStart && item.ProductionHour <= SelectedDateDayShiftHr25End
              select item).Sum(x => x.Inductotherm1) ?? 0,

              Induction2 =
             (from item in db.tbl_dppITHr
              where item.ProductionHour >= SelectedDateDayShiftStart && item.ProductionHour <= SelectedDateDayShiftHr25End
              select item).Sum(x => x.Inductotherm2) ?? 0,
    };


        ViewData["Striko2"] = MeltAreaInformation.Striko1.ToString();

ここで、アプリケーションをデバッグして実行し、Var MeltAreaInformation にカーソルを合わせると、次のものが割り当てられていることがわかります。 ここに画像の説明を入力

以下は、HTML ページに ViewData を表示するために使用している Razor 構文です。

<table class="MeltTable">
<tr><th colspan="7">Total Weight Poured (kg's)</th></tr>
<tr><th>Striko 2</th><td class="MeltTableZero td @((int)ViewData["Striko2"] == 0 ? "red" : null)">@ViewData["Striko2"].ToString()</td></tr>
<tr><th>Striko 3</th><td class="MeltTableZero td @((int)ViewData["Striko3"] == 0 ? "red" : null)">@ViewData["Striko3"].ToString()</td></tr>
<tr><th>Striko 4</th><td class="MeltTableZero td @((int)ViewData["Striko4"] == 0 ? "red" : null)">@ViewData["Striko4"].ToString()</td></tr>
<tr><th>Striko 1</th><td class="MeltTableZero td @((int)ViewData["Striko1"] == 0 ? "red" : null)">@ViewData["Striko1"].ToString()</td></tr>
<tr><th>Striko 5</th><td class="MeltTableZero td @((int)ViewData["Striko5"] == 0 ? "red" : null)">@ViewData["Striko5"].ToString()</td></tr>
<tr><th>Induction 1</th><td class="MeltTableZero td @((int)ViewData["Inductotherm1"] == 0 ? "red" : null)">@ViewData["Inductotherm1"].ToString()</td></tr>
<tr><th>Induction 2</th><td class="MeltTableZero td @((int)ViewData["Inductotherm2"] == 0 ? "red" : null)">@ViewData["Inductotherm2"].ToString()</td></tr>
</table>

誰でも問題に光を当てることができますか。値を手動で割り当てようとしましたが、それでも同じ問題が発生します。

4

1 に答える 1