【问题标题】:Passing a List values with a GET in asp.net mvc?在 asp.net mvc 中使用 GET 传递列表值?
【发布时间】:2010-12-10 16:31:40
【问题描述】:

我有以下数据-

  IList<int> mylist= new List<int>();
    int value=0;
    ViewData["URL"] = "/Services/Getdata/?value="+&value+"&mylist="+mylist;

   // It hits this function   
    public void Getdata(int value,IList<int> mylist)
    {}

现在的问题是列表没有被正确传递...我在这里执行 GET 并且无法发布数据...所以现在我知道它必须像&amp;mylist[0]=2&amp;mylist[1]=3..so on 一样通过它...那么如何实现这一点...我找到了this,但还有其他选择吗?

请在这里帮帮我..在我的情况下,我不能真正使用 TempData..我想要的只是在 asp.net mvc 中通过线传递一个列表或数组?以前有人做过类似的事情吗?

【问题讨论】:

  • 你反对使用TempData吗?
  • 是的...我不能真正使用 TempData 在我的情况下..我将此 url 传递给使用它的 .swf...

标签: asp.net-mvc-2 list get


【解决方案1】:

您可以使用以下函数将列表序列化为一个字符串:

public string Serialize(System.Collections.Generic.IList<int> list, string paramName) {
    return String.Join("&", list.Select((value, index) => String.Format(CultureInfo.InvariantCulture, "{0}[{1}]={2}", paramName, index, value)));
}

【讨论】:

  • 我遇到的一个小问题是我正在尝试传递两个列表……但不知何故,当我这样做时,它并没有正确执行……它在两个列表中传递了相同的列表(第二个)...
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-09-06
  • 1970-01-01
  • 2019-06-01
  • 1970-01-01
  • 2015-05-29
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多