2011-02-16 66 views
0

看一下下面的代码片段:字符串包含逗号分隔值的ARRAY

public JsonResult GetMapList(string siteDescription,string siteStatus) 
    { 
     var IDs = new[] { 3,4,5 }; 

谁能请告诉我的最巧妙的方法与变量siteStatus来代替硬编码3,4,5一部分会预先包含

回答

-1

动态逗号分隔字符串如3,4,5

感谢您可能需要做解决此

string[] values = siteStatus.Split(','); 

int[] ids = Array.ConvertAll<string, int>(values, delegate(string s) { return int.Parse(s); }); 
空校验

或LINQ

var ints = from m in siteStatus.Split(',') 
      select Convert.ToInt32(m); 
+0

这将使ID的字符串数组。 – 2011-02-16 11:42:51

0
using System.Web.WebPages; 

var IDs = siteStatus.Split(',').Select(n => n.AsInt()); 

或(可能是你还需要验证,因为这将在错误输入打破)

var IDs = siteStatus.Split(',').Select(n => int.Parse(n));