0

コントローラーからビューにリストを渡そうとしています。ブレークポイントを使用してコントローラー側を確認しましたが、すべて問題ないようです。問題はビューにあります。リスト内のすべての位置について、リストの最後の要素のみを取得します。

コントローラーのリストは次のとおりです:1、2、3、4、5

ビューでは、リストは次のとおりです。5、5、5、5、5

コントローラーコード:

        if (Request.IsAuthenticated)
        {
            AdminController AC = new AdminController();
            List<ShowAllMessagesModel> SAMM = new List<ShowAllMessagesModel>();
            SAMM = AC.showAllMessages();
            ViewData["myList"] = SAMM;
            return PartialView();
        }

ビュー コード:

<%  var list = ViewData["myList"] as List<sms.Models.ShowAllMessagesModel>; %>
<%= list.Count %>
<% 
    for ( int i = 0; i < list.Count ; i++) 
    {
   %>
   <li>MsgId : <%= list.ElementAt(i).MessageId%> Sender : <%= list.ElementAt(i).Sender%></li>
   <% } %>

助言がありますか?

4

1 に答える 1

2

明らかに、リストのすべての要素をインスタンス化する必要があります。そうしないと、毎回同じ要素が挿入されます:)

List<var> examplelist = new List<var>();

for ( int i =0 ; i <=10 ; i++)
{
    var = new var();
    exampleList.Add(var);
}
于 2013-03-22T20:42:23.227 に答える