string tags = "9,3,12,43,2"

List<int> TagIds = tags.Split(',');

这行不通,因为split方法返回一个字符串[]


当前回答

这里有一种方法:

List<int> TagIds = tags.Split(',').Select(int.Parse).ToList();

其他回答

这很简单。首先拆分字符串。 修改逗号(,)后的空格。 然后使用系统定义的ToList()

string inputText = "text1, text2"

删除','后的空格,并将此逗号分隔的文本转换为List

List<string> resultList = (inputText.Split(',')).Select(t => t).ToList();

如果没有LINQ Query,你可以选择这个方法,

string tags = "9,3,12,43,2";
List<string> numbers = nos.Split(',').ToList<string>();

然后你可以把这个List转换成整数类型…

string tags = "9,3,12,43,2";
List<int> TagIds = tags.Split(',').Select(int.Parse).ToList();

如果你正在使用c# 3.5,你可以使用Linq来实现这一点

string tags = "9,3,12,43,2";
List<int> tagIds = tags.Split(',').Select(s=>int.Parse(s)).ToList();

还是短的那个

string tags = "9,3,12,43,2";
List<int> tagIds = tags.Split(',').Select(int.Parse).ToList();

有一点LINQ可以走很长的路:

 List<int> TagIds = tags.Split(',')
         .Select(t => int.Parse(t))
         .ToList();