當使用WPF和實體框架我有一個看起來像一個app.config如下:%連接字符串中的APPDATA%未替換實際文件夾?
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<connectionStrings>
<add name="DatabaseEntities" connectionString="metadata=res://*/Model.csdl|res://*/Model.ssdl|res://*/Model.msl;provider=System.Data.SqlServerCe.4.0;provider connection string="Data Source=%APPDATA%\Folder\Database.sdf"" providerName="System.Data.EntityClient" />
</connectionStrings>
</configuration>
使用此代碼時它總是引發以下錯誤:
System.Data.EntityException: The underlying provider failed on Open. ---> System.Data.SqlServerCe.SqlCeException: The path is not valid. Check the directory for the database. [ Path = %APPDATA%\Folder\Database.sdf ]
當我運行路徑「%APPDATA%\ Folder \ Database.sdf」從命令提示符它工作正常,如果我刪除「%APPDATA%和硬編碼路徑它工作正常 - 所以它看起來就像%APPDATA%只是沒有被替換爲實際文件夾...
謝謝,
在你的連接字符串中使用'| DataDirectory |'而不是'%APPDATA%'讓我知道它是否解決了你的問題。 – 2013-02-23 07:32:00