MVC içeren viewdata dizisini görüntüleme

Bu görünümden kontrolöre çağrı,

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

        });

Denetleyicide, eylemin yürütümü bitirdikten sonra var

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

"userctrl" mesajı görüntülemek için kullanıcı kontrolüdür ve kod şuna benzer:

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

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

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

    </div>

<% } %>

Şimdi, bu kullanıcı denetimi yukarıda gösterildiği gibi görünüme geri döndürülür. Tek bir dize varsa, ancak bir dizi olarak, bu iyi çalışır, onu döküm açısından biraz daha fazla kodlama gereklidir. Lütfen kullanıcı kontrolünde bana nasıl kod yazabilirim?

0
Bana bunu nasıl başarabileceğimin bir örneğini verebilir misiniz?
katma yazar user1005310, kaynak
teşekkür ederim, işe yaradı
katma yazar user1005310, kaynak
Neden ekran mesajlarını jSon olarak döndürmüyor, müşteri tarafında jSon'u işlemek kolay mı?
katma yazar Emmanuel N, kaynak
DisplayMessages bir dizi dizidir ve jSon hakkında bilgi verebilir ve kontrol cihazınızda böyle bir şey yapabilir public string Summary (string ID) {return String.Join ("
", displayMessages.ToArray ()); }
katma yazar Emmanuel N, kaynak

1 cevap

TempData yerine Action'ınızdan dönüş dizisi, Şunun gibi bir şey

public string Summary(string Id) { 
            return String.Join("
",displayMessages.ToArray()); }
0
katma