Inclui banco de dados no projeto sem adicionar a fonte de dados?

0

Para o projeto em que estou trabalhando, criei um banco de dados vazio como um arquivo de modelo e preciso incluí-lo no meu projeto.

O arquivo só está sendo usado quando o programa o copia para um novo local. Depois disso todo o trabalho é com o novo arquivo. Meu código está fazendo exatamente o que eu quero; Eu só não quero adicionar uma nova fonte de dados simplesmente para copiar um arquivo.

Exemplo de código:

Imports System.IO    
Imports System.Data.OleDb    
Imports System.Windows.Forms    

FName = Directory & NewFile & ".mdb"    
FName2 = Directory & NewFile & ".rdb"    
'File.Copy(Application.StartupPath & "\Template.mdb", FName, False) 'old 
IO.File.WriteAllBytes(FName, My.Resources.Template)                 'new
Con = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & FName)    
Try    
  Con.Open()    
  SQLstr = String.Format("INSERT INTO tblParts (FILENAME) VALUES('{0}');", Name)    
  Command = New OleDbCommand(SQLstr, Con)    
  Command.ExecuteNonQuery()
Finally    
  Con.Close()    
End Try

'File.Copy(FName, FName2, False) 'old
'File.Delete(FName)              'old
FileSystem.Rename(FName, FName2) 'new

Posso adicionar um arquivo de banco de dados a um projeto do Visual Studio sem adicionar uma nova fonte de dados?

Solução: Adicionado o arquivo como um recurso nas propriedades do projeto e cancelado o Assistente de Origem de Dados. Também limpei o código para criar e renomear o arquivo. Código antigo é comentado para referência.

    
por Wayne 26.11.2013 / 16:46

1 resposta

0

sim, você pode adicionar quase qualquer tipo de arquivo a um projeto, usando o Rclick - > Adicionar item existente. em seguida, verifique se o arquivo está definido como "Conteúdo" em suas propriedades e se está definido como "Copiar se mais recente". Dessa forma, sempre que você alterar seu modelo, na próxima compilação, o arquivo será copiado para o diretório \ bin \ debug ou \ bin \ release, dependendo de sua configuração de compilação.

se você estiver fazendo um projeto ASP, simplesmente coloque-o no diretório bin, já que os sites não são construídos da mesma maneira que outros tipos de projeto. Cuidado, no entanto, que um site na implantação nunca seja executado em um usuário que tenha permissão para modificar qualquer um dos arquivos do site, inclusive copiá-los, portanto, essa não é uma boa abordagem para a Web.

    
por 26.11.2013 / 17:34