在 C# 中插入一个字符串

Interpolating a string in c#

我想对以下内容使用字符串插值:

payloadArgs = string.Format("{0}TrackingID: \"{1}\"", payload.ToString().Replace("\n", "; "), trackingId);

我试过了

payloadArgs = $"{trackingId} TrackingId, \"{payload.ToString().Replace("\n", "; "), trackingId};

但我显然弄错了,因为我在 "trackingId" 上收到编译错误 "Cannot implicitly convert a string to int" 和关于 "newline in constant"

的警告

正确的做法是什么?

你很接近。您更改了变量之间的顺序,将 trackingId 作为第一个变量而不是第二个变量。另外,字符串插值不接收(string, parameter, parameter)结构体中的参数,而是在大括号

内获取
payloadArgs = $"{payload.ToString().Replace("\n", "; ")}TrackingID: \"{trackingId}\"";