我有以下代码,在这里我尝试分割字符串并将其添加到我的字符串列表中。但是我在这样做时遇到了麻烦:
List<string> filteredProviders = new List<string>();
foreach (Door2MoreLeadModel d2m in lstDoor2MoreLeadModel)
{
if(!string.IsNullOrEmpty(d2m.FilteredProviders))
{
filteredProviders.Add(d2m.FilteredProviders.Split(',')).ToList());
}
}
出现以下错误:
最佳匹配的重载方法 System.Collections.Generic.List.Add(string)'有一些无效 争论
我在做什么错了?
答案 0 :(得分:3)
使用AddRange()
代替Add()
,Split()
返回一个strings
的数组,并且ToList
是一个List<T>
,但是{{1} }方法仅接受Add()
。
string
即使没有filteredProviders.AddRange(d2m.FilteredProviders.Split(',')).ToList());
:
ToList()
参考文献: List.Add(T) Method , List.AddRange(IEnumerable) Method
答案 1 :(得分:1)
filteredProviders.Add(d2m.FilteredProviders.Split(',')[0]).ToList());
或
filteredProviders.Add(d2m.FilteredProviders.Split(',')[1]).ToList());
通过split(),您可以创建字符串数组,并且必须选择要使用的字符串。
或全部使用
filteredProviders.AddRange(d2m.FilteredProviders.Split(',')).ToList());