配列を含むビューデータを表示するMVC

ビューから、これはコントローラへの呼び出しであり、

 $('#Submit').click(function() {

            var params = { Id: $('#ID').val() };

            $('#Summary').html("Loading...");

            $.ajax({
                url: '<%= Url.Action("Summary", "Home") %>',
                data: params,
                success: function (html) {
                    $('#Summary').html(html);
                },
                cache: false
            });

        });

コントローラ上では、アクションが実行を終了した後、

ViewData["Message"] = displayMessages.ToArray();
Return view("userctrl");

"userctrl"はメッセージを表示するユーザーコントロールで、このコードは次のようになります

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>

if (ViewData.ContainsKey("Message")) { %>

    <div class="Message">
        <%= ViewData["Message"] %>

    </div>

<% } %>

上記のように、このユーザーコントロールはビューに戻されます。単一の文字列が配列として配列されている場合は、これをキャストするためのコーディングが少し必要です。どのように私はそれをコード化することができます私はユーザーコントロールで教えてください?

0
私はこれをどのように達成できるかの例を教えてください。
追加された 著者 user1005310,
ありがとう、それは働いた
追加された 著者 user1005310,
なぜ表示メッセージをjSonとして返さないのですか?クライアント側でjSonを操作するのは簡単ですか?
追加された 著者 Emmanuel N,
もしdisplayMessagesが文字列の配列であれば、あなたはjSonを忘れることができ、あなたのコントローラでこれを行うことができます。 public string Summary(string Id){return String.Join( "
"、displayMessages.ToArray()); }
追加された 著者 Emmanuel N,

1 答え

あなたのアクションからTempDataの代わりに文字列を返します。

public string Summary(string Id) { 
            return String.Join("
",displayMessages.ToArray()); }
0
追加された