は、脳のおならを持って...このモデル与えられた:カミソリビューは、フロー
public class Result
{
public decimal Cost {get;set;}
}
そして、この極端に簡略化ビュー:
@{
decimal resultsTotal = 0;
}
<div>@resultsTotal</div> //need the total from the loop below here
@foreach(var result in Model.Results)
{
resultsTotal += result.Cost;
<div>@result.Cost</div>
}
私はresultsTotal
変数 foreachループの上に表示する必要があります。私は@Model.Results.Sum(x => x.Cost)
のビューで、モデルまたはコントローラ、ポイントが私はがResults
を複数回列挙することを避けるためにほしいと思うことを望んでいることを実現します。恐らく結果をバッファリングして、おそらくまたはをループした後にdivを更新する予定はありますか?はい、私もjquery
を使うことができましたが、それはにおいがします。
'HelperResult'を使う代わりに、 StringBuilder'それから 'Html.Raw'それです。結果を1回だけ列挙します。 – mxmissile
そう簡単に何かのためにやっているのは本当に正しいことではありません。モデルをビュー内で計算する必要なしにビューに表示できる状態にするためには、必要な処理を行うことを強くお勧めします。データが複数回ループしてはならない理由はありますか?幸運の私の友人:) – Luke
@ルーキーのyea私は(パフォーマンス)の要件は理想的ではないが、それはそれが何であるか知っている。私は実際に私のコマンドにすべてを移動し、生成されたHTMLテーブルを 'StringBuilder'に私のモデルの一部として保存して、私のビューに出力しました。 – mxmissile