这是一个非常愚蠢的问题,但我现在对此感到非常沮丧。
我有一个app.config,用于存储SQL Server的用户凭据。
所以用户名是读者,密码是“abcdefg”。
当我尝试执行插入时,我得到了这个例外:
初始化字符串的格式不符合从索引138开始的规范。
当我将凭据更改为没有任何特殊字符进行转义的用户时,它就像魅力一样。
有人知道它可能是什么吗?
在调试会话期间被混淆的连接字符串是:
Data Source=MACHINE\\SQLSERVER;Initial Catalog=DbName;Connect Timeout=300;Application Name=application;User ID=reader;Password=\"abcdefg\"
答案 0 :(得分:0)
您可以使用"
所以connectionStrings看起来像这样:
<connectionStrings>
<add connectionString="Data Source=MACHINE\\SQLSERVER;Initial Catalog=DbName;Connect Timeout=300;Application Name=application;User ID=reader;Password="abcdefg"" name="CS"/>
</connectionStrings>
答案 1 :(得分:0)
您可以使用xml字符转义。例如,空间是 &安培;#X20; 你可以通过这种方式逃避任何角色。一般形式是 &安培; #x中的 HHHH ; 要么 &安培;# NNNN ; 其中 hhhh 是十六进制, nnnn 是十进制。
还有&#39;快捷方式&#39;此处列出:https://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references