2016-04-14 19 views
7

Ho creato il file .bacpac dal portale di Azure e lo ho salvato sul desktop. Quindi, in Management Studio 2016 Candidato facendo clic con il pulsante destro su Database e scegliendo Importa livello di dati applicazione sto tagliando il mio file quindi successivo ... e quando va a processare sto ricevendo errore:Errore durante l'importazione di bacpac utilizzando Sql Server Management Studio 2016: impossibile caricare il file o l'assembly Microsoft.SqlServer.Dac

Impossibile caricare il file o l'assembly 'Microsoft. SqlServer.Dac, Version = 13.0.0.0, Culture = neutral, PublicKeyToken = b03f5f7f11d50a3a 'o una delle sue dipendenze. Non è possibile trovare il file specificato. (Microsoft.SqlServer.Management.Dac.DacWizard)

Stavo cercando su google ma non sono riuscito a trovare alcuna soluzione funzionante. Potresti aiutare?

Controllare anche questa immagine sulla configurazione:

SQL configuration

+0

Sono curioso di sapere come è stato installato SSMS senza il Data-Tier Application Framework. Hai disinstallato qualcosa o hai fatto qualcosa di sbagliato durante l'installazione? –

+0

Potrebbe essere utile provare a installare i bit SSDT più recenti per SQL 2016. Ciò include tutti gli oggetti necessari per il lavoro con i file DAC. –

risposta

11

Ciò è dovuto ad un bug in SSMS che dovrebbe essere corretto in una versione futura. Il problema è che se si dispone di Lightswitch per VS2015 installato, i percorsi di collegamento utilizzati da SSMS per cercare le DLL includeranno un riferimento a una versione precedente delle DLL DacFx precedenti alla versione 130. Ciò comporta l'errore sopra riportato poiché, per impostazione predefinita, Visual Studio restituisce la prima DLL corrispondente.

Soluzione:

  1. Open "C: \ Program Files (x86) \ Microsoft SQL Server \ 130 \ Tools \ Binn \ ManagementStudio \ ssms.pkgundef" in un visualizzatore di file di testo. Sarà necessario eseguire questo visualizzatore come amministratore al fine di modificarla
  2. Aggiungere la seguente riga al fine di garantire che in futuro, il percorso di associazione 110 viene ignorato e salvare il file:

    [$ CHIAVEPRINCIPALE $ \ BindingPaths \ {272EA915-68EE-4AFD-99A4-1286126565EC}]

  3. Successivamente dobbiamo rimuoverlo dal registro poiché è già stato aggiunto una volta. Aprire Regedit.exe e accedere a "HKEY_CURRENT_USER \ SOFTWARE \ Microsoft \ SQL Server Management Studio \ 13.0_Config \ BindingPaths"

  4. Eliminare la cartella {272EA915-68EE-4AFD-99A4-1286126565EC} da sotto questa chiave

Nota:. Ciò avverrà solo su macchine con VS2015 installato e il pacchetto Lightswitch .. installato in questo la causa è che i percorsi vincolanti VS2015 sono inclusi in applicazioni isolate Shell come SSMS meno che il file pkgundef li esclude una correzione sarà inclusa in una prossima release

Disclosure:. io lavoro in SQL Server team di strumenti

+0

Questa correzione non ha funzionato per me. Ho anche (dopo aver provato questa correzione), installato l'anteprima di aprile. Non ha funzionato; stesso errore. Quindi ho cancellato di nuovo la cartella "272EA915 ..." dalla chiave di registro di BindingPaths (che è riapparsa quando ho installato l'anteprima di aprile). Lo stesso errore. Posso contattarmi direttamente o potremmo discuterne in una chat SO? – Dave

+0

Ho finito per farlo funzionare su una nuova VM, quindi è chiaramente un problema di incompatibilità con altre cose che ho installato. Ho trovato un post sul forum MSDN con una soluzione simile: https://social.msdn.microsoft.com/Forums/en-US/33ab0a3c-bbaa-4878-bc49-27c6c8f54dc7 – Dave

+1

Ciao Dave - il problema è che quando rispondo a questo non ho notato la backslash convertita da StackOverflow seguita da un {per essere una sequenza di escape. Ha perso \ dopo BindingPaths. Ho aggiornato la risposta: l'aggiunta della voce aggiornata a pkgundef funzionerà per te. –

0

È possibile scaricare la versione più recente del quadro applicazione livello dati (che include Microsoft.SqlServer.Dac) da qui: https://www.microsoft.com/en-us/download/details.aspx?id=51672

Si noti che è necessario installare anche le dipendenze SqlDom e SqlSysClrTypes in base alla sezione Requisiti di sistema della pagina di download:

Dipendenze Microsoft SQL Server Application-Tier Framework richiede i tipi CLR di sistema Microsoft SQL Server e Microsoft SQL Server Transact-SQL ScriptDom (SQLSysCLRTypes.msi e SQLDOM.msi) entrambi disponibili di seguito. Se si utilizza una macchina x64, sarà necessario installare sia la versione x64 che x86 degli MSI sopra.

  1. SQLSysCLRTypes.msi x64 - http://go.microsoft.com/fwlink/?LinkID=746597&clcid=0x409
  2. SQLSysCLRTypes.msi x86 - http://go.microsoft.com/fwlink/?LinkID=746609&clcid=0x409
  3. SQLDOM.msi x64 - http://go.microsoft.com/fwlink/?LinkID=746593&clcid=0x409
  4. SQLDOM.msi x86 - http://go.microsoft.com/fwlink/?LinkID=746605&clcid=0x409
+0

installo questo pacchetto da 3,6 mb ma ho lo stesso messaggio di errore. Dove sono queste dipendenze? –

+0

ha fatto tutto ma sempre lo stesso, c'è qualcosa che posso fare di più per farlo funzionare? –

+0

ho anche allegato un'immagine nel mio post quando ho provato ad aggiornare –