C#中带正斜杠的字符串的格式是什么?

时间:2010-05-17 15:11:01

标签: c# html-helper

我正在使用HtmlHelper,我根据检索到的日期和月份值提供表数据ID。问题是id无法以其所处的格式识别。'/'似乎在我将'/'替换为' - '时似乎无法获取。

daysRow.AppendFormat("<td id='{0}/{1}'>{0}</td>", day, d1.Month.ToString());

有谁能告诉我如何格式化这个?

4 个答案:

答案 0 :(得分:13)

问题不在于C#,而是在HTML中使用'/'字符。来自HTML 4.0 spec on the id attribute

的部分
  

ID和NAME令牌必须以a开头   信([A-Za-z]),可以遵循   任意数量的字母,数字   ([0-9]),连字符(“ - ”),下划线   (“_”),冒号(“:”)和句号   ( “”)。

'/'违反了该规则,这就是为什么你在使用它时会遇到问题,而不是' - '字符。

答案 1 :(得分:1)

你不能在html中使用/来表示ids。请参阅here

答案 2 :(得分:0)

我认为您使用的是无效字符,当然根据此SO question,您似乎无法使用正斜杠。

答案 3 :(得分:-4)

使用// iirc

alternativley我认为把@放在你的字符串前会使它成为一个字面意思。

例如

string s = @"\w\e\r\ty";

string s = "d\\d";

您需要使用的是字符串文字

'&安培; #4 7;'没有空格

而不是正斜杠