在string.format中使用特殊字符

use*_*862 1 .net c# asp.net-mvc

如果我有以下字符串生成器:

var a = string.Format("{0}-{1}", model.FirstName, model.LastName); 
Run Code Online (Sandbox Code Playgroud)

我想使用特殊字符&#8211而不是-.我尝试了以下方法:

var a = string.Format("{0}\u8211{1}", model.FirstName, model.LastName);`
Run Code Online (Sandbox Code Playgroud)

但它给了我这个?象征.我怎样才能解决这个问题?

Cod*_*ter 6

我用var a = string.Format("{0}\u8211{1}", ...)但是我得到了?符号.

那是因为您使用的是十进制表示,其中C#Unicode转义序列是十六进制的.

你在找\u2013.

但无论如何,没有真正的理由这样做,因为您只需在源字符串中插入字符即可.C#支持Unicode代码文件.

  • @Manfred可悲的是,这是他们的第500个问题,他们现在应该更清楚了解. (2认同)