0

执行以下操作时:

foreach (String fromList in columns)
{
    query += "`" + fromList + "`,";
}
query.TrimEnd(',');

逗号不会从字符串中删除。

我究竟做错了什么?

4

6 回答 6

10

TrimEnd返回新字符串。你需要:

query = query.TrimEnd(',');
于 2012-08-24T14:53:38.917 回答
3

字符串是不可变的,因此您需要存储 TrimEnd 的返回值。

query = query.TrimEnd(',');

虽然有一种更简单的方法可以做到这一点:

var query = String.Join(",", columns.Select(fromList => String.Format("`{0}`", fromList)));
于 2012-08-24T14:58:44.747 回答
1

TrumEnd 返回一个字符串。您是否将其分配给变量?

于 2012-08-24T14:54:30.227 回答
0

字符串是不可变的。如果您想要应用后的结果TrimEnd,则必须将该结果分配给一个变量:

foreach (String fromList in columns)
{
    query += "`" + fromList + "`,";
}
query = query.TrimEnd(',');

在这里,我已将其分配回自身。


当然,更好的是:

query = String.Join(",",fromList.Select(a=>"`" + a + "`"));

而不是循环+编辑。

于 2012-08-24T14:54:44.783 回答
0

使用以下示例:

var trimmed = query.TrimEnd(',');
Console.WriteLine(trimmed);
于 2012-08-24T14:55:02.800 回答
0

它应该是

foreach (String fromList in columns)
{
    query += "`" + fromList + "`,";
}
query = query.TrimEnd(',');
于 2012-08-24T14:57:05.160 回答