2009-09-11 47 views
5

我有以下连接字符串,并且您会注意到“Provider's.Tests”,请注意单引号,如何将其输入到web.config以使其有效?web.config和连接字符串中的引号

<connectionStrings> 
    <clear/> 
    <add name="Provider" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename="C:\Projects\Provider's.Tests\app_data\db.mdf";Integrated Security=True;User Instance=True" providerName="System.Data.SqlClient"/> 
</connectionStrings> 
+0

不需要报价! – balexandre 2009-09-11 08:04:26

回答

7

我不认为它的Provider's这是问题,它是双引号的路径。
尝试只是删除它,它说:AttachDbFilename=C:\Projects\Provider's.Tests\app_data\db.mdf;

如果拥有它,它是在连接字符串中重要的,尽量对其进行编码: AttachDbFilename=&quot;C:\Projects\Provider's.Tests\app_data\db.mdf;&quot;

1

你应该使用'的撇号和& QUOT;用于在web.config文件中使用特殊字符的引号。

但是,正如其他人建议您只需删除引号,因为它们不是必需的。

1

单引号在你的情况下不是问题。这是你在文件名中的双引号。你可以这样逃避它:

<add 
    name="Provider" 
    connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=&quot;C:\Projects\Provider's.Tests\app_data\db.mdf&quot;;Integrated Security=True;User Instance=True" 
    providerName="System.Data.SqlClient"/> 
2

你应该对引号和引号进行编码。引号(“)使用&quot;和单引号(')进行编码使用&apos;编码。这里的主要问题是引号,它仍然可能不为你周围使用值引号编码撇号工作。

<connectionStrings> 
    <clear/> 
    <add name="Provider" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=&quot;C:\Projects\Provider&apos;s.Tests\app_data\db.mdf&quot;;Integrated Security=True;User Instance=True" providerName="System.Data.SqlClient"/> 
</connectionStrings> 
相关问题