.....................................................

在MVC課程中,有一段補充教材

把原本 ASP.NET MVC 5的範例,改用 ASP.NET Core專案來做,基本上大同小異。

唯獨 DB-First「資料庫連結(DB Connection)」的地方,需要自己下指令。

 

當初錄影時,是VS 2019 +.NET Core 2.x版

但我把範例重新在 .NET Core 3.1重做一次,都是正常的。請放心。

 

有位學員發生了錯誤,

(1)  Scaffold-DbContext : 無法辨識 'Scaffold-DbContext' 詞彙是否為 Cmdlet、函數、指令檔或可執行程式的名稱。請檢查名稱拼字是否正確,如果包含路徑的話,請確認路徑是否正確,然後再試一次。
位於 線路:1 字元:1
+ Scaffold-DbContext 'Data Source=.\SqlExpress;Initial Catalog=xxxxxxx ...
+ ~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (Scaffold-DbContext:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

 

解決方法:

在VS 2019新增一個 ASP.NET Core 2.x 或 3.1專案後

務必先透過NuGet安裝兩個套件
-- 「Microsoft.EntityFrameworkCore.Tools」套件
-- 「Microsoft.EntityFrameworkCore.SqlServer」套件  註解:因為我用MS SQL Server來搭配

(課程中有講,如果您發生錯誤,可以先檢查一下,是不是自己漏了哪些步驟?     影片重播、回頭自己看一下,比對一下)

 

 

(2) Visual Studio 上方的功能列   「工具」 =>「Nuget套件管理器」=>「套件管理器主控台」

輸入指令  Scaffold-DbContext 'Server=.\sqlexpress;Database=xxxx' Microsoft.EntityFrameworkCore.SqlServer

出現這樣的錯誤:

A connection was successfully established with the server, but then an error occurred during the login process. (provider: Shared Memory Provider, error: 0 - 管道的另一端上無任何處理程序。)

與伺服器的連接已成功建立,但在登入程序時發生錯誤。 (provider: 共用記憶提供者, error: 0 - 管道的另一端上無任何處理程序。)

 

解決方法:

我上課使用的指令是

Scaffold-DbContext 'Server=.\sqlexpress;Database=資料庫名稱;Trusted_Connection=True;MultipleActiveResultSets=true' Microsoft.EntityFrameworkCore.SqlServer
 

(課程中有講,如果您發生錯誤,可以先檢查一下,是不是自己漏了哪些步驟?     影片重播、回頭自己看一下,比對一下)

之前上課介紹的微軟文件,現在找不到了(可能改版或是刪除)

所以他找到類似的網頁,照著做,卻發生錯誤  https://docs.microsoft.com/zh-tw/ef/core/managing-schemas/scaffolding

我也找不到當初的官方文件了,比較類似的是這個網頁介紹 Code-First,請參閱 https://docs.microsoft.com/zh-tw/aspnet/core/data/ef-mvc/intro?view=aspnetcore-3.1

 

 

ASP.NET MVC 5 線上教學(目前已經累積 75~80小時的課程)

課程大綱,請看 http://mis2000lab.pixnet.net/blog/post/35172535
或是  https://dotblogs.com.tw/mis2000lab/2018/08/14/aspnet_mvc_online_learning_mis2000lab


第一天 5.5小時 完整內容 免費試聽

**  Youtube 免費觀賞 (1-1)  https://youtu.be/9spaHik87-A

**  Youtube 免費觀賞 (1-2)  https://youtu.be/BFkIFg1iFLo

arrow
arrow

    MIS2000 Lab 發表在 痞客邦 留言(0) 人氣()