C# 从泛型列表创建字符串

C# 从泛型列表创建字符串,c#,C#,我试图从列表中的值创建一个字符串;我试图实现的是更新查询中使用的sql语法: 更新表集合COLUMN1=X,其中COLUMN2位于'A','B','C' A、 B、C是我清单上的项目。我如何才能做到这一点? 尝试: 但是它会创建一个没有撇号的列表…如果你的代码除了撇号之外给了你想要的东西,只需坚持一条 .Select(s => "'" + s + "'") 在_list.and.Aggregate…之间,您也可以使用: join比aggregate快得多,我不得不推荐这一点。那么,当_列

我试图从列表中的值创建一个字符串;我试图实现的是更新查询中使用的sql语法:

更新表集合COLUMN1=X,其中COLUMN2位于'A','B','C'

A、 B、C是我清单上的项目。我如何才能做到这一点? 尝试:


但是它会创建一个没有撇号的列表…

如果你的代码除了撇号之外给了你想要的东西,只需坚持一条

.Select(s => "'" + s + "'")
在_list.and.Aggregate…

之间,您也可以使用:


join比aggregate快得多,我不得不推荐这一点。那么,当_列表的一个成员包含值“或1=1;-”时,您会怎么做?这是一个公平的点加入,有一个向上投票。我只是希望对代码进行最小的更改。如果您正在构建将要执行的SQL,那么请警惕SQL注入攻击,您可能正在向自己敞开大门。例如,如果列表中的一个项目被称为“或1=1;-”,该怎么办。我建议您打开一个新的问题,从更高的层次概述您正在做的事情,并询问是否有更好的方法来做您想做的事情。另一种比构建SQL字符串更安全的解决方法是使用它来为您构建查询。如果您在执行Linq到SqlSQL注入时需要帮助,请打开一个新问题。现在无所谓,但感谢您的建议:
.Select(s => "'" + s + "'")
string commaSeparatedList = string.Join(",", _list.Select(s => "'" + s + "'"));
string commaSeparatedList = "'"+_list.Aggregate((a, x) =>  a + "','" + x )+"'";