Przy użyciu WPF i ramy encji Mam app.config, który wygląda tak:% APPDATA% w ciąg połączenia nie jest zastąpiony rzeczywistego folderu?
<?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>
Używając tego kodu to zawsze rzuca się następujący błąd:
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 ]
gdy uruchomię ścieżka "% APPDATA% \ Folder \ Database.sdf" z wiersza poleceń działa poprawnie, a jeśli usunę "% APPDATA% i hardcode ścieżka działa dobrze - tak wygląda po prostu jak% APPDATA% po prostu nie jest podstawiana dla rzeczywistego folderu ...
Dziękujemy,
Użyj '| DataDirectory' w łańcuchu połączenia zamiast'% APPDATA% 'Daj mi znać, czy to rozwiąże twój problem. –