Pergunta

A configuração:

Eu tenho uma DLL que usa um ConnectionString para conectar -se a um banco de dados SQL. Quando adicionar a DLL ao meu site, tenho que adicionar o ConnectionString ao meu web.config para que minha DLL funcione corretamente (isso é por design). Depois de adicioná -lo ao web.config, tudo funciona bem (como esperado).

O problema:

O problema começa quando eu quero mover o ConnectionSting para as configurações de aplicativos ASP.NET do meu site encontradas no IIS> Site padrão> Propriedades> ASP.NET TAB> EDIT GLOBAL ENFIGURAÇÃO ...> Conexão

Se eu o remover do meu web.config e coloque -o lá, minha DLL não funcionará. Se eu usar o ConnectionString em qualquer outro lugar do meu site (e não de uma DLL), posso acessar o banco de dados bem através desse método, mas por algum motivo minha DLL só poderá acessá -lo se estiver no web.config.

A questão:

Como posso obter minha DLL para usar o ConnectionsTring listado na configuração do ASP.NET Gerenciador de string de conexão em vez do web.config?

Foi útil?

Solução

Você deve procurar a seção da configuração geral do ASP.NET, que pode ser recuperada através da classe WebConfigurationManager, em vez de procurar uma string de conexão via ConfigurationManager.Connectionstrings.

    // Get the connectionStrings section.
ConnectionStringsSection connectionStringsSection =
    WebConfigurationManager.GetSection("connectionStrings")
    as ConnectionStringsSection;

// Get the connectionStrings key,value pairs collection.
ConnectionStringSettingsCollection connectionStrings =
    connectionStringsSection.ConnectionStrings;

// Get the collection enumerator.
IEnumerator connectionStringsEnum =
    connectionStrings.GetEnumerator();
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top