插值字符串形成后效果很好:
string BG="7263-2323";
string PG="2983-2323";
string interpolatedString = $"{BG};{PG}";
Console.WriteLine(interpolatedString);
变量interpolatedString的结果:
7263-2323;2983-2323
但是,问题是我将interpolatedString存储在数据库中,然后它不显示BG和PG的值...而是显示字符串原样:
$\"{BG};{PG}\"
我该如何解决这个问题?有什么想法吗?
答案 0 :(得分:2)
你不能这样做。插值字符串实际上只是使用string.Format
的语法糖。相反,你需要像这样存储你的字符串:
Hello {0}, welcome to my app
然后使用string.Format
:
var format = "Hello {0}, welcome to my app";
var output = string.format(format, "Bob");
或者你也可以自己动手,例如:
var format = "Hello {name}, welcome to my app";
var output = format.Replace("{name}", "Bob");
请注意,此处的示例并不是特别有效,因此如果您正在执行大量此操作,则可能需要使用StringBuilder
之类的内容。