2014-11-27 4 views
6

Sto utilizzando il pacchetto Nuget System.Data.SQLite in un'applicazione Web MVC. Sembra che ci sia un problema di blocco quando provo a pulire la soluzione e ricostruire. Il messaggio di errore che ottengo è: Unable to delete file "bin\x64\SQLite.Interop.dll". Access to the path '\bin\x64\SQLite.Interop.dll' is denied.SQLite.Interop impossibile eliminare il file alla pulizia della soluzione

Sto pensando che il database sia ancora aperto o che il dll sia ancora in uso, ma non riesco a trovare documentazione o riferimenti allo stesso problema. Questo question sembra un problema simile ma non fornisce una soluzione al mio problema.

Ecco un frammento di codice che sto usando per scrivere nel database SQLite:

 var conn = new SQLiteConnection("Data Source=" + connectionString); 
     conn.Open(); 

     var debugEntriesTableQuery = "CREATE TABLE ..."; 

     var cmd = conn.CreateCommand(); 

     cmd.CommandText = debugEntriesTableQuery; 

     cmd.ExecuteNonQuery(); 

     conn.Close(); 

C'è un altro passo necessario per chiudere correttamente la connessione al database e informare la dll e la connessione è chiusa ?

Sto utilizzando questo codice all'interno di una soluzione dati che ho aggiunto a un pacchetto nuget e sto utilizzando in un'altra soluzione. Sto riscontrando questo problema solo durante la creazione/pulizia della soluzione che utilizza il mio pacchetto nuget.

+0

Hai mai risolto questo? –

+2

Ho trovato la soluzione amico mio: http://stackoverflow.com/a/22514442/2544235 – Eric

risposta

0

L'uccisione del processo IIS Express risolve questo errore per me, come indicato dal collegamento che Eric indica. Sto usando la comunità di Visual Studio 2015. Esco dal processo IIS Express dalla barra delle applicazioni.