Pergunta

Quando tento adicionar uma nova fonte de dados para o meu projeto eu recebo um aviso dizendo "A conexão que você selecionou usa um arquivo de dados local que não faz parte do projeto atual. Gostaria de copiar o arquivo para o seu projecto e modificar a conexão? "

Isto soa bastante obscura para mim, como eu sou novo para VB.NET e programar aplicativos não-script no geral. A fonte de dados, neste caso, é um arquivo .sdf SQL CE.

Pergunta 1: Se eu disser que eu quero copiar o banco de dados para o projeto, o que vai acontecer depois que eu compilar o aplicativo, onde o banco de dados será? (Como eu vou editá-lo a partir de outro aplicativo?)

Pergunta 2: Se eu não incluí-lo, como a fonte de dados irá ainda manter ligado? Posso ligar utilizando variáveis ??do sistema de arquivos enviroiment como % ProgramFiles% \ MyAppDir?

Pergunta 3: Posso apenas dizer-lhe para usar um read-only (só precisa lê-lo) fonte de dados na web, como em um FTP

Obrigado pela ajuda antecipadamente! =)

Foi útil?

Solução

Visual Studio apenas tenta ter todos os seus arquivos em um só lugar, com o resto deles - na pasta do projeto.

Q1 - banco de dados SQL CE pode estar em qualquer lugar que você gosta, você usa secção ConnectionStrings configurações no seu app.settings. SQL Ce é apenas um arquivo, nada mais, nada menos, portanto, acessível a partir de qualquer aplicação. É não é compilado em seu aplicativo, ele só viaja com ele quando você implantar etc.

Para responder Q2 - você provavelmente pode, mas não tenho certeza que ele vai trabalhar automaticamente para você.

Q3 - para ler a partir de ftp, provavelmente não, a menos que você trabalhar suporte ao cliente ftp em seu aplicativo e baixá-lo em segundo plano. Outra solução seria mapear ftp a unidade local e acessá-lo de lá.

Por exemplo, o armazenamento de cadeia de ligação de app (excerto de app):

<connectionStrings>
   <add name="db" connectionString="Provider=Microsoft.SQLSERVER.OLEDB.CE.2.0; data source=c:SomePathToSDFfile" />
</connectionStrings>

Mais tarde, em sua aplicação, você acessar essa seqüência de conexão como este: (Adicionar referência a System.Configuration)

  Dim c As Configuration.ConnectionStringSettingsCollection
  Dim cn As SqlClient.SqlConnection

  c = Configuration.ConfigurationManager.ConnectionStrings
  cn = New SqlClient.SqlConnection
  cn.ConnectionString = c.Item("db").ConnectionString
  cn.Open()
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top