我对以下连接字符串有疑问:
ConfigurationSettings.AppSettings["connstr"] = "Dsn=dsn_name;
Trusted_Connection=yes;Uid=usrName;Pwd=some+Password;";
这会引发身份验证失败的异常。问题在于用户密码内的“+”号。
任何人都知道如何转义密码中的特殊字符?
谢谢!
我对以下连接字符串有疑问:
ConfigurationSettings.AppSettings["connstr"] = "Dsn=dsn_name;
Trusted_Connection=yes;Uid=usrName;Pwd=some+Password;";
这会引发身份验证失败的异常。问题在于用户密码内的“+”号。
任何人都知道如何转义密码中的特殊字符?
谢谢!
关键是,整个事物都充当字符串,Dsn=dsn_name;
Trusted_Connection=yes;Uid=usrName;Pwd=some+Password;
因此,+
充当字符,它不充当连接。
string s = String.Format("Dsn={0};
Trusted_Connection=yes;Uid={1};Pwd={2}","dsn_name","usrName",some+"Password") ;
您可以尝试String.Format
将字符串值注入适当位置的方法。我假设这some
是一个字符串变量。
然后,在代码中赋值 s。
ConfigurationSettings.AppSettings["connstr"] =s;
编辑:1.如果你用 ; 分隔它,你是否尝试将整个东西放在一行中?那么就会出现问题。
2.如果这首先是身份验证失败,您必须检查您的密码用户名是否正确。你必须在之后添加你的密码pwd=