Kentico - 转换 Eval() & 最后尾随 space

Kentico - Transformation Eval() & trailing space at the end

这一定是有史以来最简单的问题,但同样,我不知道答案。我刚刚注意到(在我的例子中)使用像 Eval("Location") 这样的东西总是在输出的末尾创建一个尾随空白 space 。通常我不关心尾随 space,但在一种特定情况下,它必须被删除。我试过使用 replace(),但这只适用于文本本身,而不适用于尾随空白 space,例如 "San Francisco " 变为 "SanFrancisco ",但尾随 space 仍然存在。请让我知道如何摆脱它。我检查了我的文本,最后没有任何 space。

Eval("Location").ToString().Replace(" ","")

您要查找的函数是 .Trim(),它将删除字符串中尾随和前导的空白 space。所以你可以使用

Eval("Location").ToString().Trim()

但是,如果使用 .Replace() 没有删除尾随 space,那么我会说 space 不是来自字段本身,而是来自它后面的内容转变。

如果您的代码如下: "<%#Eval("Location").ToString().Trim()%> [other content]" 那么该字段内容和其余内容之间总会有一个 space。也许在评估该字段后检查转换并查看是否有 space?

正如 Brandon 已经提到的,您正在寻找的函数是 .Trim() 不过这仅适用于字符串。因此,如果它不起作用,您很可能需要使用以下方法之一将该对象转换为字符串:

ValidationHelper.GetString(Eval("Location"), "").Trim()
Eval<string>("Location").Trim()