2013-02-25 52 views
0

我有以下连接字符串一个问题:ConnectionString的ODBC PWD

ConfigurationSettings.AppSettings["connstr"] = "Dsn=dsn_name; 
Trusted_Connection=yes;Uid=usrName;Pwd=some+Password;"; 

这会抛出异常的认证失败。问题在于用户密码中的'+'符号。

任何人都知道如何逃避密码内的特殊字符?

谢谢!

+1

尝试和使用ConnectionStringBuilder,请参阅http://weblogs.asp.net/psheriff/archive/2009/09/08/using-the-connectionstringbuilder-class.aspx – 2013-02-25 15:31:18

回答

0

重点是,整件事情作为一个字符串,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。

编辑: 1.Did你试图把整个事情单行线,如果你有一个分开吧;那么就会出现问题。

2.如果这首先是身份验证失败,那么您必须检查天气您的密码用户名是否正确。你必须添加你的密码后​​

+0

是的,这是正确的,但解决方案是什么? – user2090983 2013-02-25 15:53:51

+0

是的,是的。但它也可能是减号或相等或任何标志 – user2090983 2013-02-25 16:00:38

+0

好的,我会试试看。 – user2090983 2013-02-25 16:01:15