Onde devo armazenar dados de configuração do usuário? Especificamente o caminho para o arquivo de dados?

StackOverflow https://stackoverflow.com/questions/2511050

Pergunta

Eu tenho um aplicativo usando um sqlite db e preciso da capacidade de o usuário mover o arquivo de dados e apontar o aplicativo para onde ele foi movido. Usei a estrutura da entidade para criar o modelo e, por padrão, ele coloca a string de conexão no arquivo app.config. Pelo que li se fizer alterações na sequência de conexão lá, elas não entrarão em vigor até que o aplicativo seja reiniciado. Isso parece um pouco desajeitado para o meu uso. Vejo como posso iniciar meu modelo e passar em uma string personalizada, mas não tenho certeza de qual é a prática recomendada onde armazenar pré -frinhas básicas de usuário como essa? Ini, registro, em outro lugar? Não quero que o usuário precise "abrir" o arquivo a cada vez, quando se mudar e, em seguida, o aplicativo tentará abrir automaticamente a partir de então.

Foi útil?

Solução

Dê uma olhada em Configurações do aplicativo Para uma visão geral de como criar configurações de configuração específicas do usuário que podem ser salvas em um arquivo user.config. O registro é mais ou menos abandonado em favor do novo sistema de arquivos de configuração baseado em XML.

Outras dicas

Você não precisa usar a string de conexão que é adicionada ao app.config. Você pode pular adicioná -lo, na verdade, no assistente EDMX.

Você então precisa simplesmente ter a string de conexão ao vivo em qualquer lugar que você escolher e passá -la para o seu construtor ObjectContext.

Você pode colocar a string de conexão em um arquivo externo, o registro ou onde quer que escolher.

Pode fazer sentido ter uma classe estática que gera a string de conexão e pega o local do arquivo de uma fonte comum que o usuário pode alterar (ou seja, registro, arquivo no disco, variável de ambiente etc.)

Você pode criar uma classe Configurações e, em seguida, serializá -la em um arquivo XML com um nome predfinado em um local definido pelo arquivo app.config. Você pode controlar com que frequência o arquivo foi lido na memória você mesmo. O único time que você precisaria reiniciar o aplicativo era se o local do arquivo de configurações fosse alterado.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top