首頁 >資料庫 >mysql教程 >如何解決使用實體框架和 MySQL 的 MVC4 中的「無法檢索元資料」錯誤?

如何解決使用實體框架和 MySQL 的 MVC4 中的「無法檢索元資料」錯誤?

Patricia Arquette
Patricia Arquette原創
2024-10-28 02:35:02780瀏覽

 How to Resolve

無法使用Entity Framework 和MySql 檢索MVC4 中的元資料

嘗試使用Entity Framework 4.4 為MVC4 建立資料模型

嘗試使用Entity Framework 4.4 為MVC4 建立資料模型會遇到與元資料檢索相關的錯誤。此錯誤訊息通常為:
Unable to retrieve metadata for BTD.Data.Product using the same
DbCompiledModel to create context against different types of database
servers is not supported. Instead, create a separate DbCompiledModel
for each type of server being used.

錯誤原因

此問題可能是由於MVC4 控制器腳手架無法準確識別MySql 連接字串而導致的正在產生字串實體框架(EF) CRUD 程式碼。

解決方案

要解決該錯誤,請按照以下步驟操作:
  1. 修改連接字串:
    產生EF CRUD 程式碼時,變更連線字串以指向Microsoft SQL Server 資料庫(例如,使用System.Data.SqlClient)。
  2. 支架代碼:
    使用修改後的連接字串添加控制器和視圖腳手架。
  3. 恢復連接字串:
    腳手架完成後,恢復連接使用 MySql.Data.MySqlClient 字串到原始 MySql 配置。

附加說明

  • 已觀察到切換到 SQL Server 資料庫、建置程式碼並還原到 MySql 連線字串可能會解決問題。
  • 確保您的 MySql 版本受支援並安裝了適當的 .NET 提供者。
  • 檢查資料庫表結構並確保其與 EF 資料模型保持一致。
  • 考慮使用[程式碼優先遷移方法](https://docs.microsoft.com/en-us/ef/core/get-started/using -mvc/migrations) 和 EF。

以上是如何解決使用實體框架和 MySQL 的 MVC4 中的「無法檢索元資料」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn