MVC显示包含数组的viewdata

时间:2011-10-27 19:43:58

标签: asp.net-mvc-3

从视图来看,这是对控制器的调用,

 $('#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>

<% } %>

现在,此用户控件将返回到视图,如上所示。如果只有一个字符串,但是作为一个数组,在投射它时需要更多的编码。请在用户控制中告诉我如何编写代码?

1 个答案:

答案 0 :(得分:0)

从Action而不是TempData返回字符串,类似

public string Summary(string Id) { 
            return String.Join("<br />",displayMessages.ToArray());
}