none
DataSet Tipado RRS feed

  • Pergunta

  • dae pessoal.. criei um dataset "VotacaoDataSet.xsd" e um metodo "InsertQuery" e estou acessando via código.

     

    Code Snippet

    Votacao.VotacaoDataSetTableAdapters.VotacaoTableAdapter objVotacao = new Votacao.VotacaoDataSetTableAdapters.VotacaoTableAdapter();

    objVotacao.InsertQuery(txtPergunta.Text, 0, 0, System.DateTime.Now);

    MessageBox.Show("Registro Gravado com Sucesso!");

     

    O problema é que não da erro, mas também não grava no banco de dados.

     

     

    sexta-feira, 15 de junho de 2007 23:30

Respostas

  •  

    Oi !

     

    Como eu desconfiava...

     

    Gerado pelo VS ? Em algum ponto algo foi feito diferente, pois você está utilizando dentro de uma aplicação windows uma string de conexão típica de aplicação web, eu ainda não consegui descobrir a sequencia de passos que faz isso ser tão frequente com tantos desenvolvedores...

     

    Você colocou seu .MDB dentro de um diretório chamado App_Data, em seu projeto. Então o visual studio utilizou, para gerar a string de conexão, a variável |DataDirectory| .

     

    Ele usou essa variável porque a pasta App_Data é especial e ele a trata de forma especial. Quando você roda seu projeto, ele copia a pasta App_Data certamente para dentro de bin\release .

     

    O resultado, é que quando você abre seu banco para verificar se algo foi gravado (abre o banco da app_data), dá a impressão de que nada foi gravado. Porém os dados foram gravados, mas na cópia do banco que foi copiada para o diretório app_data no release e não no .mdb original que está dentro do projeto.

     

    Seu código certamente está funcionando, você apenas está procurando os dados no banco errado.

     

    Para acabar de vez com esse problema : coloque o caminho completo do banco (c:\...) na string de conexão, ao invés da variável |DataDirectory|

     

    []'s

     

    segunda-feira, 18 de junho de 2007 01:38

Todas as Respostas

  • Oi !

     

    Mostre como está sua string de conexão...

     

    []'s

     

    sábado, 16 de junho de 2007 06:43
  • Dae dennes..

     

    O método de exibir os dados na datagrid esta neste dataset e funciona.

    sábado, 16 de junho de 2007 13:54
  • Oi !

     

    Isso não quer dizer muita coisa... precisaria ver sua string de conexão para ajudar...

     

    []'s

     

    domingo, 17 de junho de 2007 14:14
  • Code Snippet

    <?xml version="1.0" encoding="utf-8" ?>

    <configuration>

    <configSections>

    </configSections>

    <connectionStrings>

    <add name="Votacao.Properties.Settings.VotacaoConnectionString"

    connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\Votacao.mdb;Persist Security Info=True"

    providerName="System.Data.OleDb" />

    </connectionStrings>

    </configuration>

     

    é um arquivo app.conf de uma aplicação windows forms gerado pelo próprio Visual Studio
    segunda-feira, 18 de junho de 2007 01:06
  •  

    Oi !

     

    Como eu desconfiava...

     

    Gerado pelo VS ? Em algum ponto algo foi feito diferente, pois você está utilizando dentro de uma aplicação windows uma string de conexão típica de aplicação web, eu ainda não consegui descobrir a sequencia de passos que faz isso ser tão frequente com tantos desenvolvedores...

     

    Você colocou seu .MDB dentro de um diretório chamado App_Data, em seu projeto. Então o visual studio utilizou, para gerar a string de conexão, a variável |DataDirectory| .

     

    Ele usou essa variável porque a pasta App_Data é especial e ele a trata de forma especial. Quando você roda seu projeto, ele copia a pasta App_Data certamente para dentro de bin\release .

     

    O resultado, é que quando você abre seu banco para verificar se algo foi gravado (abre o banco da app_data), dá a impressão de que nada foi gravado. Porém os dados foram gravados, mas na cópia do banco que foi copiada para o diretório app_data no release e não no .mdb original que está dentro do projeto.

     

    Seu código certamente está funcionando, você apenas está procurando os dados no banco errado.

     

    Para acabar de vez com esse problema : coloque o caminho completo do banco (c:\...) na string de conexão, ao invés da variável |DataDirectory|

     

    []'s

     

    segunda-feira, 18 de junho de 2007 01:38
  • Valeu Dennes.

     

    Entendi o que ocorreu.

    segunda-feira, 18 de junho de 2007 19:22