SQLCE db local em temp- caminho na connectionstring?
-
06-07-2019 - |
Pergunta
Eu tenho SQL Ce db em meu aplicativo, que está incluído no meu diretório app. Durante a depuração sua OK, mas quando publicado e correr com setup.exe, ele recupera "arquivo não encontrado" no diretório temporário do aplicativo é executado a partir. Eu gostaria de executar a partir da localização padrão, mas eu não sei como mudar isso.
Eu estou usando este string:
SqlCeConnection connection = new SqlCeConnection("Data Source=database.sdf;Persist Security Info=False;");
Quando eu executar setup.exe, o aplicativo não inicia, afirmando que em seu diretório temporário o arquivo db não foi encontrado. Quando eu executo app.exe, ele funciona. Eu não entendo isso ...: (
EDIT: Eu posso ver isso nas configurações do projeto VS, não há seqüência de conexão e não há "Data Source = | DataDirectory | \ Database.sdf"
O caminho deve ser algo como diretório local? Obrigado!
Solução
Construa a sua seqüência de conexão dinamicamente. Algo parecido com isto:
string connString = string.Format("Data Source={0}; Persist Security Info=False;",
Path.Combine(Application.StartupPath, "database.sdf"));