[Entity Framework][Visual Studio 2013] SSDT for SQL Server 2014 and SQL Server Express 2014 LocalDB

[Entity Framework][Visual Studio 2013] SSDT for SQL Server 2014 and SQL Server Express 2014 LocalDB

隨著 SQL Server 2014 釋出,為了要讓 VS2013 連 SQL Server 2014,SSDT 也必須要升級,安裝完 SSDT for SQL Server 2014 時也會裝上 SQL Server Express 2014 LocalDB

image

 

升級完畢後便能使用 VS2013 連接 SQL Server 2014

 

比較有問題的是 EF 專案,加入 EF6.1 參考後,就會套用以下設定,v12.0 是 SQL Server Express 2014 LocalDB 的版本號

@App.config

<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
  <parameters>
    <parameter value="v12.0" />
  </parameters>
</defaultConnectionFactory>

 

若需要用 defaultConnectionFactory 會造成錯誤,以下方法挑一個來使用即可

PS.當使用 Code First 時,沒有使用 Web.config/App.config 所定義的連線字串,EF 就會套用 defaultConnectionFactory

  • 安裝 VS2013 預設只會安裝 SQL Server Express 2012 LocalDB 並且啟動,沒有包含 2014,所以只要將 v12.0 改為 v11.0
  • 若你跟我一樣,安裝 SSDT 後沒有啟用 SQL Server Express 2014 LocalDB Instances,透過命令提示字元,我們可以透過輸入 "C:\Program Files\Microsoft SQL Server\120\Tools\Binn\SqlLocalDB.exe" create "v12.0" 來建立它

image

 

Instances 的目錄 %LOCALAPPDATA%\Microsoft\Microsoft SQL Server Local DB\Instances

如此一來便可以見到 SQL Server 2014 Instances  v12.0 已被建立

image

 

SQL Server Express 2014 LocalDB 連線字串:

Server=(localdb)\v12.0;Integrated Security=true

若有謬誤,煩請告知,新手發帖請多包涵


Microsoft MVP Award 2010~2017 C# 第四季
Microsoft MVP Award 2018~2022 .NET

Image result for microsoft+mvp+logo