我有一个ListBox,它有很多列表项,其间有逗号,例如abc,dce和cdf,dfe .....等等。现在,如果我选择多个listitem并尝试从控制器FormCollection参数中收集它,我将获得逗号分隔字符串的列表,例如" abc,dce,cdf,dfe"但我需要这样的" abc,dce"," cdf,dfe"等等。
我有一个解决方案是将另一个参数作为List<string> ListBoxId
来解决我的问题。
现在,我只是想知道有没有办法使用FormCollection本身并获得预期的结果。
请告知。
答案 0 :(得分:0)
现在,我只是想知道有没有办法使用FormCollection 本身并获得预期的结果。
虽然我不相信FormCollection是处理这个问题的正确方法,但这是你可以做的:
[HttpPost]
public ActionResult YourPostAction(FormCollection fc)
{
var listvals = fc["stocks"];
string[] splitVals = listvals.Split(new char[] { ',' });
// do something with each value from the fc-list
foreach (var str in splitVals)
{
...
}
}
基本上我们采用FormCollection列表并根据“逗号”分隔符将其拆分。从那里,我们得到一个你可以使用的字符串数组。