Inquiridor
String de conexao

Pergunta
-
Olá estou tendo dificuldade em especificar a string de Conexao do meu projto Pocket Pc,
Criei o banco em Compact editon, e no VS 2005 add a referencia ao banco.
Mas nao reconhece o caminho especificado.
Poderiam me dar alguma solucao, ou dica.
Adson.
Todas as Respostas
-
-
Pocket PC
Crio o banco no Compact edtion, faço referencia no meu projeto ao banco, importo a biblioteca
add a referencia ao SqlServerCe e using System.Data.SqlServerCe.
public static class Conexao
{
public static SqlCeConnection conexao; public static void Conectar(){
string strigConn = @"Data Source =.\MyDatabase#1.sdf";conexao =
new SqlCeConnection(strigConn); try{
conexao.Open();
}
catch (Exception e){
MessageBox.Show("Conexão não pode ser inicializada.\n Erro: " + e.Message.ToString()); Application.Exit();}
}
Essa string de conexao é gerada pelo proprio VS 2005, tentei tbm a string fisica da minha maquina e nda.
-
Estou deduzindo que voce criou o banco utilizando o Wizard da IDE, verifique se o arquio SDF está sendo enviado para o dispositivo durante o deploy da aplicação, e verifique aonde o arquivo está, por exemplo no caso da string de conexão que voce está utilizando voce está informando que o arquivo sdf está na raiz do dispositivo @"\", e o deploy da IDE por padrão copia o SDF para a pasta da aplicação.
Abraços
-
Caso tenho o activesyn na sua máquina vc pode colocar o banco que foi criado no local especificado. Séria bacana vc mudar seu banco para o my documents do palm. Acho que assim fica mais fácil. Quando vc usa o vs2005 para criar o banco vc fala o lugar onde ele vai ser criado.
-
Se o seu banco de dados (SDF) estiver no mesmo local da aplicação, altere o seu código para:
..
..
string strigConn = @"Data Source =" + (System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase)+ @"\MyDatabase#1.sdf";
..
..
[]s