私の話は:私はasp.net MVCプロジェクトで働いています。私はこのようreprezented、2つのモデルのリストを持っている:辞書をcshtmlテーブルにバインドする適切な方法
private Dictionary<string, List<Tuple<string, string>>> _foldersName_NoRecords = new Dictionary<string, List<Tuple<string, string>>>();
private List<string> _totalNoOfDates = new List<string>();
を私は(私は完全に行くの塗りつぶしをデバッグした後に見てきたように)それらのリストを記入した後、私はビューでそれらにアクセスするためのViewBagに渡します。問題は、リストが記入された順序で表示されず、オーバーライドされるということです。 ビューからのコードがある:例えば
<thead>
<tr>
<th>
Folder Name
@foreach(var date in @ViewBag.dateList)
{
<td>@date</td>
}
</th>
</tr>
</thead>
<tbody>
@foreach(var tupleKey in @ViewBag.statisticsList.Keys)
{
<tr>
<td> @tupleKey </td>
@foreach (var tupleItem in @ViewBag.statisticsList[tupleKey])
{
foreach (var date in @ViewBag.dateList)
{
if (tupleItem.Item1 == date)
{
<td>@tupleItem.Item2</td>
}
}
}
</tr>
}
</tbody>
:@tupleItem.Item2
は、それが新しいキーが追加された場合(リストから保存されたデータは、TXTファイルから抽出される)が属する日付に表示されません。誰でもこのデータをより良く表示するという考えはありますか?
C#コードをデバッグするときに順序が完璧になりますが、ビューでは順序が問題になります(データがオーバーライドされます)。 – DaianaB
現在どのような出力が生成されていますか?その代わりに何をしたいですか? – mjwills
たとえば、日付「12.07.2017」特定のキーに対して特定の値がありません。非値は、次の値(次の日付に属する)で上書きされます。だから、 "12.07.2017"にはそのキーの値があります。これはOKではありません – DaianaB