返回列表对象如何在视图中显示

时间:2017-06-05 21:25:25

标签: c# asp.net-mvc asp.net-web-api

我有控制器,我使用服务。该服务执行一些查询并返回列表,如下所示: enter image description here

控制器:

 public ActionResult GetTareas(string tiporesponsable, int responsableID, int? cuadrillaID, int? sucursalID, int regionID, int solicitudID, string chkFinalizadas)
 {
    var consulta = ag.ConsultarAgenda(tiporesponsable, responsableID, 
     cuadrillaID, sucursalID, regionID, solicitudID, chkFinalizadas);   
    return View();
 }

现在我希望获得该服务(ag.ConsultarAgenda)的一些价值,例如:"SucursalCodigo"并接收到div中的视图:

<div id="event_box" class="margin-bottom-10"></div>

任何人都可以解释我该怎么办?此致

我可以发送Json吗?喜欢:

 return Json(consulta, JsonRequestBehavior.AllowGet);

但是如何才能将特定对象接收到视图中?

3 个答案:

答案 0 :(得分:1)

ASP.NET MVC为我们提供了几个选项,可以根据请求将数据从控制器传递到视图,其中一个是ViewBag。 如上例所示,您可以在控制器部分执行以下操作:

 public ActionResult GetTareas(string tiporesponsable, int responsableID, int? cuadrillaID, int? sucursalID, int regionID, int solicitudID, string chkFinalizadas)
    {
  ViewBag.ConsultarAgenda = ag.ConsultarAgenda(tiporesponsable, responsableID, 
 cuadrillaID, sucursalID, regionID, solicitudID, chkFinalizadas);   
        return View();
    }

在视图中:

<div id="event_box" class="margin-bottom-10">@ViewBag.ConsultarAgenda</div>

使用Json的最佳做法是通过前端的AJAX(The View):

<script type="text/javascript">
  $.ajax({
  url: '@Url.Action("GetTareas", "ControllerName")',
  contentType: "application/json; charset=utf-8",
  dataType: "json",
  success: function(data){
  //consume the returned data here
   $(".margin-bottom-10").html(data);
  },
  error: errorFunc});
</sript>
<div id="event_box" class="margin-bottom-10"></div>

答案 1 :(得分:0)

ViewBag应该可以工作:

@ ViewBag.TexttoLargo

您可能希望解析ViewBag结果,因为它看起来像是以返回方式终止。

答案 2 :(得分:0)

Mike McCaughan提到你应该学习一些教程。

您有多种基于this

的选项

ViewBag

ViewBag是一个动态对象,它提供了一种将信息传递给视图的方便的后期绑定方式

@model关键字

强类型课程。 示例

public ActionResult Details(int? id)
{
    if (id == null)
    {
        return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
    }
    Movie movie = db.Movies.Find(id);
    if (movie == null)
    {
        return HttpNotFound();
    }
    return View(movie);
}

然后在视图中访问模型: view