Asp.net mvc 如何在asp.net mvc4中使用json呈现操作

Asp.net mvc 如何在asp.net mvc4中使用json呈现操作,asp.net-mvc,json,asp.net-mvc-4,Asp.net Mvc,Json,Asp.net Mvc 4,这是我的json函数 function getMessage(userId) { $.ajax( { url: "@Url.Action("_getMessage")", //url: "/Message/_getMessage",

这是我的json函数

  function getMessage(userId) {
                    $.ajax(
                         {

                             url: "@Url.Action("_getMessage")",
                             //url: "/Message/_getMessage",
                             type: "POST",
                             dataType: "json",
                             traditional: true,
                             data: { "recieverUsersId": userId },
                             success: function (response) {
                                 //alert("clicked");
                                 //loop the data.. how do I loop json?
                                 var div = $('#msg');
                                 var recieverImgDiv = $('.reciever')
                                 div.html("");
                                 div.html(response);
                                 alert('Success');
                         },
                         error: function (req, status, error) {
                             var div = $('#comment');
                             div.html("");
                             div.append('Error');
                             alert('Error');
                         }
                     });
         }
这是我的控制器

 public ActionResult _getMessage(long recieverUsersId)
        {
            ViewBag.sentTime = "";

            long userId = WebSecurity.GetUserId(User.Identity.Name);

            var model = new ListModelForUserDetail();
            model.userDetails = db.UserInfos.Where(x => x.UserID == userId).ToList();
            model.messages = db.Messages.Where(x => x.SenderUserId == userId && x.MultipleReceiversId == recieverUsersId || x.SenderUserId == recieverUsersId && x.MultipleReceiversId == userId).ToList();

            var searchs = from m in db.MessageThreads select m;
            searchs = searchs.Where(x => x.MessageStarterUserId == 1);


            ViewBag.model = searchs.ToString();

            return PartialView("_getMessage", model);
        }
这是我的主要视图,在这里我呈现了一个动作方法

 @{Html.RenderAction("_getMessage", new {recieverUsersId=0});}
局部视图写为

@foreach (var item in Model.messages)
{
   if (@item.SenderUserId != ViewBag.loginUserId && @item.FileAttachedURL == "") {
                                <li id="reply" class="bg-color-white"><b class="sticker sticker-right sticker-color-white"></b><p class="text fg-color-blue" id="sendtext @item.MessageId + "> + @item.MessageText + </p><div class="date place-right fg-color-blue" style="margin-top:-10px; font-size:12px;"> + Hour + ':' + minute + ' ' + ampm + ' (' + strDate + ')</div></li>;

                             }
                             else if (@item.SenderUserId != ViewBag.loginUserId && @item.FileAttachedURL != "") {
                               <li id="reply" style="padding:4px 4px 24px 4px;" class="bg-color-white"><b class="sticker sticker-right sticker-color-white fg-color-blue" id="sendtext @item.MessageId + "></b><p class="text fg-color-blue" style="height:auto;">@item.MessageText + </p><br /><img class="fg-color-red" src="@item.FileAttachedURL + " style="height:auto; width:100%; margin-left:auto; margin-right:auto; "/><div class="date place-right fg-color-blue" style="margin-top:0px; font-size:12px;"> + Hour + ':' + minute + ' ' + ampm + ' (' + strDate + ')</div></li>
                             }
                             else if (@item.SenderUserId == ViewBag.loginUserId && @item.FileAttachedURL == "") {
                                <li id="reply" class="bg-color-blue"><b class="sticker sticker-left sticker-color-blue"></b><p class="text fg-color-white"  id="sendtext @item.MessageId + '">@item.MessageText + </p><br/><div class="date place-right fg-color-white" style="margin-top:-10px; font-size:12px;">' + Hour + ':' + minute + ' ' + ampm + ' (' + strDate + ')</div></li>;

                             }
                             else if (item.SenderUserId == (ViewBag.loginUserId) && item.FileAttachedURL != "") {
                                <li id="reply" style="padding:4px 4px 24px 4px;" class="bg-color-blue"><b class="sticker sticker-left sticker-color-blue fg-color-white" id="sendtext @item.MessageId + "></b><p class="text fg-color-white" style="height:auto;"> + @item.MessageText + </p><br /><img class="fg-color-red" src=" + item.FileAttachedURL + " style="height:auto; width:100%; margin-left:auto; margin-right:auto; "/><div class="date place-right fg-color-white" style="margin-top:0px; font-size:12px;">' + Hour + ':' + minute + ' ' + ampm + ' (' + strDate + ')</div></li>
                             }
                             //$('#recieverId').val(item.UserID)

                             //$("#sendtext" + item.MessageId).emoticons();

}
@foreach(Model.messages中的变量项)
{
如果(@item.SenderUserId!=ViewBag.loginUserId&&@item.FileAttachedURL==“”){
  • ++@item.MessageText++

    +Hour+:“+minute+”+ampm+”(“+strDate+”)
  • ; } 如果(@item.SenderUserId!=ViewBag.loginUserId&&@item.FileAttachedURL!=“”),则为else{
  • @item.MessageText+”


    +Hour+:“+minute+”+ampm+”(“+strDate+”)
  • } 如果(@item.SenderUserId==ViewBag.loginUserId&&@item.FileAttachedURL==“”),则为else{
  • @item.MessageText+


    “+Hour+”:“+minute+”+ampm+”(“+strDate+”)
  • ; } else if(item.SenderUserId==(ViewBag.loginUserId)&&item.FileAttachedURL!=“”){
  • +@item.MessageText+


    ”+小时+:“+分钟+”+安培+”(“+strDate+”)
  • } //$('#receiveId').val(item.UserID) //$(“#sendtext”+item.MessageId).emoticons(); }

    我没有在主视图中获得我想要的局部视图结果,那么现在该怎么办?

    @AndrewBarber我得到的是空白网页。我看不出这里有什么特别的错误。您是否在
    成功
    回调中获得了预期的HTML?您为什么在成功回调中发出“错误”警报?@xdumain在view@Jedediah它只是用来交叉检查你能发布你的部分视图代码吗?