【问题标题】:how to return multiple variable with jsonresult in mvc from controller to view?如何在 mvc 中使用 jsonresult 从控制器返回多个变量以查看?
【发布时间】:2017-11-27 13:26:50
【问题描述】:

在下面的代码中,我传递了两个参数,一个是列表,第二个是 viewbag 消息,但是在 view 中,side 不能使用 viewbag。
那么如何使用呢,请大家帮帮我


查看

我在哪里放置 viewbag 消息

【问题讨论】:

  • urlAction 指定的控制器动作是什么样的?
  • @OndraNetočný 在上面我指定为 `var urlAction = '@Url.Action("ActionName","ControllerName")';并且这个 urlAction 传入 url: urlAction;

标签: ajax asp.net-mvc view return-value viewbag


【解决方案1】:

创建自定义类

     private class LineData
     {
        public string y { get; set; }
        public string item1 { get; set; }
        public string name { get; set; }
        public string message { get; set; }
        public List<LineData> list { get; set; }
    }

在控制器端


在视图中

【讨论】:

    【解决方案2】:

    据我对您的问题的理解,您应该创建一个包含您的列表和消息的新类(而不是将其传递给 ViewBag)。

    public class YourResponse
    {
        public string Message { get; set; }
        public List<SomeContent> Content { get; set; }
    }
    

    然后在控制器中的操作中,创建此类的新实例并填写值并将此实例传递回客户端。

    public ActionResult YourActionName()
    {
        // do the stuff here to get message and list
        var response = new YourResponse
        {
            Message = message, //insert your message here
            Content = list //and list of data here
        }
        return Json(response);
    }
    

    最后在客户端代码中读取和使用来自服务器的数据。

    function OnSuccessed(data)
    {
        var message = data.Message;
        var list = data.Content;
        // you can work with message and list here
    }
    

    请注意,这是原始示例,我没有运行代码。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-19
      • 1970-01-01
      • 2016-07-06
      • 2014-11-04
      • 1970-01-01
      相关资源
      最近更新 更多