2012-12-19 12 views
5

Recentemente ho passato a VS2012 da VS2010, quando si apre un progetto di database ottengo sotto l'erroreCome caricare il progetto del database in VS2010 e VS2012?

C:\Trunk\Database\Database.dbproj : error : Internal Error. The database platform service with type Microsoft.Data.Schema.Sql.Sql100DatabaseSchemaProvider is not valid. You must make sure the service is loaded, or you must provide the full type name of a valid database platform service. 

Sto indovinando che potrebbe essere la seguente riga nel file di progetto che si sta soffocando sul

<DSP>Microsoft.Data.Schema.Sql.Sql100DatabaseSchemaProvider</DSP> 

o forse questo

<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v10.0\TeamData\Microsoft.Data.Schema.SqlTasks.targets" /> 

Qualsiasi idea di come superare questo errore in modo da poter caricare il mio progetto in VS2012?

risposta

4

Apparentemente Microsoft ha un nuovo DSP Sql1110 in VS2012. VS2010 ha la versione Sql1100.

Per risolvere questo problema, all'interno del vostro file di .dbproj, cambiate le seguenti righe:

<ProjectVersion>4.0</ProjectVersion> 
<ProjectGuid>{a233d7e8-b460-4b72-a345-aaeee4fb3aca}</ProjectGuid> 
<DSP>Microsoft.Data.Schema.Sql.Sql100DatabaseSchemaProvider</DSP> 
... 
<!--Import the settings--> 
<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v10.0\TeamData\Microsoft.Data.Schema.SqlTasks.targets" /> 
<ItemGroup> 

a questo:

<ProjectVersion>4.1</ProjectVersion> 
<ProjectGuid>{6cd7e290-f844-4410-97f6-e8fd6e63c5b5}</ProjectGuid> 
<DSP>Microsoft.Data.Tools.Schema.Sql.Sql110DatabaseSchemaProvider</DSP> 
... 
<!--Import the settings--> 
<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v11.0\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets" /> 
<ItemGroup> 

Ho creato un nuovo file di progetto database vuoto in VS2012, confrontare il. file sqlproj al mio vecchio .dbproj, e le righe sopra sono le principali differenze. Sì, microsoft ha cambiato l'estensione del file proj, ma non è necessario modificare la vecchia estensione dbproj. Funziona su di me.

2

Dal momento che non abbiamo un set completo di codice per controllare, è difficile capire il problema esatto, ma per la vostra importazione - si dovrebbe cambiare a questo:

<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v11.0\SSDT\Microsoft.Data.Schema.SqlTasks.targets" /> 

Se questo doesn' t risolvere il problema, si prega di aggiornare anche se hai Resharper installato per caso, e prova a eliminare la sua cache.

+0

Sì ho installato ReSharper. – aggaton

+1

@aggaton - Un [collegamento] (http://connect.microsoft.com/VisualStudio/feedback/details/728838/visual-studio-11-shows-errors-even-it-built-succected) sulla connessione mostra un simile errore che è stato risolto quando la cache del resharper è stata rimossa. – Blachshma

+0

L'eliminazione dei file di cache del resharper sembra fare il trucco per me, grazie. Ho spostato la cache su% TEMP% per semplificare la ricerca e eliminare la directory ReSharperChache, quindi ho riavviato VS2012. – aggaton

2

Proprio così altre persone possono anche incontrare lo stesso problema su VS2013, aprire il file .dbproj o .sqlproj progetto di database in editor di testo:

Cambio:

<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v10.0\TeamData\Microsoft.Data.Schema.SqlTasks.targets" /> 

A:

<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v11.0\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets" /> 

E da

<ProjectVersion>4.0</ProjectVersion> 

A:

<ProjectVersion>4.1</ProjectVersion> 

E da

<DSP>Microsoft.Data.Schema.Sql.Sql100DatabaseSchemaProvider</DSP> 

A:

<DSP>Microsoft.Data.Tools.Schema.Sql.Sql120DatabaseSchemaProvider</DSP> 
+0

Ha dovuto utilizzare \ v12.0 \ ma questo ha funzionato per me Grazie – etliens

Problemi correlati