我已经有了这段代码,它将从C#中的多选下拉列表中获取所有选定的项目,并将它们存储在一个字符串中:
var selectedQuery = ddlTrackingStatus.Items.Cast<ListItem>()
.Where(item => item.Selected);
string txtSysDocChg = String.Join(",", selectedQuery).TrimEnd();
我需要做的是调整这段代码,以便所有选定的项目都用单引号存储,所以我可以在SQL Server的IN
语句中使用该字符串。当我尝试这样做时,它会一直用逗号存储。
答案 0 :(得分:1)
问题so that all the selected items are stored with single quotes around them
,答案如下:
var selectedQuery = ddlTrackingStatus.Items.Cast<ListItem>()
.Where(item => item.Selected);
string txtSysDocChg = String.Join(",", selectedQuery.Select(x => "'" + x + "'"));
//there should be no reason to keep the "TrimEnd()"
请记住,如果您的值中已包含单引号,则会中断。
但是我认为你的问题更深入,并且与你如何插入你的价值观有关。