簡體   English   中英

當我嘗試通過Entity Framework中的路徑/文件名打開MDF數據庫時,為什么會出現此錯誤?

[英]Why do I get this error when I try to open an MDF database via path/filename in Entity Framework?

我正在將應用程序從LINQ-to-SQL遷移到Entity Framework ,並更改了這一行:

using (var db = new MainDataContext(SystemHelpers.GetDatabaseConnectionString()))

using (var db = new MainDataEntities(SystemHelpers.GetDatabaseConnectionString()))

其中SystemHelpers.GetDatabaseConnectionString()).mdf文件文件路徑

它在LINQ-to-SQL中有效,但在Entity Framework中,上一行給我這個錯誤

初始化字符串的格式與以“ 0”開頭的規范沖突。

這是我能用德語做的最好的翻譯:

“從最初的索引“ 0”開始,就可以在Spezifikationüberein中進行初始化。”

實體框架連接字符串比標准連接字符串復雜。

它們由三部分組成:

  1. 提供程序連接字符串=>這就是您要提供的
  2. 元數據=>,這是EF應該從中獲取CSDL,MSL和SSDL的位置(即概念模型,映射和存儲模型)
  3. 提供程序名稱=>即對於SQL Server,通常為System.Data.SqlClient

這可能是這樣的:

元數據= res:// /Model.csdl|res:// /Model.ssdl|res://*/Model.msl;provider=System.Data.SqlClient;provider連接字符串=“ Data Source =。\\ SQLEXPRESS;初始目錄=數據庫;集成安全性=真;池=假; MultipleActiveResultSets =真”

希望這可以幫助

亞歷克斯

EF連接字符串不能僅是數據庫連接字符串。 它們包含數據庫連接字符串,但也有更多信息。 聽起來您正在嘗試單獨使用數據庫連接字符串。 那行不通。 有關如何構建EF連接字符串的信息,請參見此示例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM