2013-05-28 65 views
0
CommaDelimitedStringCollection commaStr = new CommaDelimitedStringCollection(); 
string itemList = Convert.ToString(HIGList[i].AccountId) + '$' + "HIG" + ',' + '$'; 
commaStr.Add(itemList); 
HigList = HigList + commaStr; 

当我试图执行此它显示错误逗号分隔的字符串集合

值可能不包含','

+0

什么** HigList **和** ** HIGList? –

+0

我的功能是这样的。 public bool SubmitWeeklySalesReportForSD(List HIGList) {try { List parameter = new List (); string HigList = null;对于(int i = 0,j = 1; j veena

+0

什么是itemList的值,而添加? –

回答

0

错误消息告诉你到底是什么问题是,它立即从代码中可见...您试图将包含逗号的字符串添加到逗号分隔的字符串集合中。显然这没有意义,所以抛出异常。

+0

但我需要一个逗号可以请你给我建议我需要做什么 – veena

1

CommaDelimitedStringCollection旨在生成逗号分隔的字符串。这意味着你可以为它添加值,当你调用它的方法时,你可以在每个值之间用逗号分隔值。

这就是为什么它不会让你添加一个值(非转义)的逗号,,因为它违反了它的使用。

例如:

var csv = new CommaDelimitedStringCollection(); 
var cities = new[] { "New York", "Log Angeles", "Toronto", "San Francisco" }; 

foreach (var city in cities) 
{ 
    csv.Add(city); 
} 

Console.WriteLine(csv.ToString()); // will output: New York,Log Angeles,Toronto,San Francisco 

而且你的情况:

CommaDelimitedStringCollection commaStr = new CommaDelimitedStringCollection(); 
string itemList = Convert.ToString(HIGList[i].AccountId) + '$' + "HIG" + ',' + '$'; 
commaStr.AddRange(itemList.Split(',')); 
HigList = HigList + commaStr; 
+0

非常感谢现在它工作正常。 – veena

+0

@ haim770,同样在你的例子中,你可以简单地用'csv.AddRange(cities)'将'cities'添加到'csv'集合而不是'foreach'循环中。另外,'Console.WriteLine'已经在传入的参数中调用了'ToString',因此,不需要在'csv'上调用'ToString'。请参阅此处的文档:https://msdn.microsoft.com/en-us/library/swx4tc5e.aspx – Stack0verflow