var connection = ConnectionFactory.GetConnection(
ConfigurationManager.ConnectionStrings["Test"]
.ConnectionString, DataBaseProvider);
E este é o meu App.config:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<connectionStrings>
<add name="Test" connectionString="Data Source=.;Initial Catalog=OmidPayamak;Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings>
</configuration>
Mas quando meu projeto é executado, este é o meu erro:
Referência de objeto não definida para uma instância de um objeto.
c#
ado.net
exception-handling
connection-string
app-config
Moham ad Jafari
fonte
fonte
Respostas:
Você não pode simplesmente fazer o seguinte:
Sua montagem também precisa de uma referência para
System.Configuration.dll
fonte
System.Configuration.ConfigurationManager.ConnectionStrings("Test").ConnectionString
para aqueles de nós que têm que manter o código VBComo essa é uma pergunta muito comum, preparei algumas capturas de tela do Visual Studio para facilitar o acompanhamento em 4 etapas simples.
fonte
using System.Configuration
ainda funcionafonte
<connectionStrings>
elementos do app.config (que é o que o OP está pedindo!).Verifique também se você incluiu a
System.Configuration
dll em suas referências. Sem ele, você não terá acesso àConfigurationManager
classe no espaço para nome System.Configuration.fonte
Primeiro Adicione uma referência
System.Configuration
à sua página.Então, de acordo com o seu app.config, obtenha a cadeia de conexão da seguinte maneira.
É isso agora que você tem sua cadeia de conexão em suas mãos e pode usá-la.
fonte
fonte
Experimente isso
fonte
1) Crie um novo formulário e adicione este:
quando você quiser usar a conexão, faça isso em seu formulário:
e é isso. Você estará conectado ao banco de dados e poderá fazer coisas.
Isso é para vb.net, mas a lógica é a mesma.
fonte
Você tentou:
fonte
Eu tive o mesmo problema. minha solução foi criada a partir de dois projetos. A
Class library
e um site que faz referência ao projeto da biblioteca de classes. o problema era que eu estava tentando acessar oApp.config
em meuClass library
projeto, mas o sistema estava procurando noWeb.config
do site. Coloquei a string de conexão dentroWeb.config
e ... problema resolvido!O principal motivo foi que, apesar de ter
ConfigurationManager
sido usado em outra montagem, ele estava pesquisando dentro do projeto runnig.fonte
Você pode usar esse método para obter a seqüência de conexão
fonte
fonte
Primeiro você precisa adicionar
System.Configuration
referência ao seu projeto e depois usar o código abaixo para obter a string de conexão.fonte
Isso funcionou para mim:
Saídas:
fonte
Você pode buscar a cadeia de conexão usando a linha de código abaixo -
Aqui está uma referência: String de conexão do App.config
fonte
Parece que o problema não está relacionado, você está obtendo a string de conexão como nula, portanto, certifique-se de ter adicionado o valor ao arquivo de configuração do seu projeto em execução, ou seja, o programa / biblioteca principal que é iniciado / executado primeiro.
fonte
É possível que o OP nesta pergunta esteja tentando usar um App.Config dentro de uma dll.
Nesse caso, o código está realmente tentando acessar o App.Config do executável e não da dll. Como o nome não foi encontrado, você recebe um Nulo retornado, daí a exceção mostrada.
A seguinte postagem pode ser útil: ConnectionString de app.config de uma DLL é nulo
fonte
Mencionei a
System.Configuration
biblioteca e tenho o mesmo erro. Os arquivos de depuração não tinham o app.config, crie manualmente esse arquivo. O erro é que eu resolvi isso copiando o arquivo "appname.exe.config" na pasta de depuração. O IDE não foi criado o arquivo.fonte
Resolvi o problema usando o índice para ler a string e verificando um por um. Ler usando o nome ainda dá o mesmo erro.
Eu tenho o problema quando desenvolvo um aplicativo de janela C #, não tive o problema no meu aplicativo asp.net. Deve haver algo na configuração que não está certo.
fonte