会发生这种错误的环境:ASP.NET 或 XML
情况:一个原本运行正常的C#页面,因为SQL的密码更改后一直出现“分析 EntityName 时出错”错误,验证过web.config的SQL ConnectionString的密码是更改后的。 在百思不得其解中,发现VisualStudio(2008)打开web.config会把SQL密码的某两个字符&N打上红色标记“未定义实体"N"”,突然明白,由于web.config是XML内容,而XML中会把“&”用于特定义的字符实体,即XML的&N=实体N,所以在分析SQL ConnectionString时出错。
解决:把SQL密码改为不带“&字符”的形式
附上:XML字符实体
XML 字符实体
正如上面所提到的那样,在编写 XAML 标记时经常用到的大部分字符实体和转义都是由 XML 定义的。本主题不提供类似实体的完整列表;对于这些实体的更具确定性的参考可以在外部文档(如 XML 规范)中找到。但是,为方便起见,本主题列出了一些经常用于 XAML 标记的特定 XML 字符实体。
字符 |
实体 |
说明 |
|
---|---|---|---|
&(“and”符) |
& |
必须既用于属性值,又用于元素的内容。 |
|
>(大于号字符) |
< |
必须用于属性值,但是,只要前面没有 <,就可以接受 > 作为元素的内容。 |
|
<(小于号字符) |
< |
必须用于属性值,但是,只要后面没有 >,就可以接受 < 作为元素的内容。 |
|
"(双引号字符) |
" |
必须用于属性值,但是可接受 " 作为元素的内容。请注意,属性值本身可以用 ‘ 或 " 引起来;属性值外壳由首先出现的引号定义,另一个引号随后可以用作值中的文本。 |
|
‘(单引号字符) |
' |
必须用于属性值,但是可接受 ‘ 作为元素的内容。请注意,属性值本身可以用 ‘ 或 " 引起来;属性值外壳由首先出现的引号定义,另一个引号随后可以用作值中的文本。 |
|
(数字字符映射) |
&#[integer]; 或者 &#x[hex]; |
XAML 支持将数字字符映射到处于活动状态的编码。 |
|
(不间断空格) |
(采用 UTF-8 编码) |
对于流文档元素或者使用文本的元素(如 TextBox),不间断空格不会在标记外部规范化,对于 xml:space="default" 也是如此(有关详细信息,请参见 XAML 中的空白处理)。 |
XML 注释格式
XAML 使用 XML 注释格式:注释以 <!-- 开头,以 -->, 结尾,注释中不得出现 -- 序列。
来源:http://blog.sina.com.cn/s/blog_6452c6b40100nbw2.html
时间: 2024-10-26 06:18:29