2012-12-19 15 views
5

Geçenlerde VS2010 gelen VS2012 geçti, ben bunaVS2010 ve VS2012'de veritabanı projesi nasıl yüklenir? Bir veritabanı projesi açarken

<DSP>Microsoft.Data.Schema.Sql.Sql100DatabaseSchemaProvider</DSP> 
üzerine boğulma proje dosyasında aşağıdaki satırı olabilir tahmin ediyorum

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. 

hata altına almak

ya da muhtemelen bu

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

Ben VS2012 içinde projemi yük böylece bu hata geçmiş olsun nasıl bir fikrin var? biz kontrol etmek kod tam bir set olmadığı için

cevap

4

Görünüşe göre Microsoft, VS2012'de yeni bir Sql1110 DSP'ye sahip. VS2010 sürümü Sql1100 var.

sizin .dbproj dosyası içinde aşağıdaki satırları değiştirin Bunu düzeltmek için: Buna

<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> 

:

<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> 

Ben VS2012 içinde yeni bir boş veritabanı proje dosyasını oluşturdu, karşılaştırın. sqlproj dosyası benim eski .dbproj ve yukarıdaki satırlar ana farklılıklardır. Evet, microsoft proje dosya uzantısını değiştirdi, ancak eski dbproj uzantınızı değiştirmek zorunda değilsiniz. Benim üzerimde çalışıyor.

2

, bu sorunu tam anlamak zor, ama ithalat için - Buna değiştirmek gerekir:

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

bu' Eğer burada Sorunu çöz, lütfen herhangi bir şansla Resharper'ı yüklediyseniz ve önbelleğini silmeyi deneyin.

+0

Evet Resharper yüklemiş. – aggaton

+1

@aggaton - Bağlantıda bir [link] (http://connect.microsoft.com/VisualStudio/feedback/details/728838/visual-studio-11-shows-errors-even-it-built-succeeded) benzer resharper'ın önbelleği kaldırıldığında giderilen hata. – Blachshma

+0

Yeniden paylaşım önbellek dosyalarını silmek benim için hile yapar gibi görünüyor. ReSharperChache dizinini bulmayı ve kurtarmayı kolaylaştırmak için önbelleği% TEMP% 'e taşıdım ve daha sonra VS2012'yi yeniden başlattım. – aggaton

2

Hemen böylece diğer insanlar da VS2013 bu aynı sorunla karşılaşabilir, metin editörü veritabanı proje dosyası .dbproj veya .sqlproj açmak:

Değişimi:

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

için:

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

Ve

<ProjectVersion>4.0</ProjectVersion> 
dan To

:

<ProjectVersion>4.1</ProjectVersion> 

Ve To

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

den:

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

\ v12'yi kullanmak zorunda kaldı.0 Ama bu benim için çalıştı. Teşekkürler – etliens