簡體   English   中英

Entity Framework Power Tools:錯誤“對象引用未設置為對象的實例”

[英]Entity Framework Power Tools: error “Object Reference not set to an instance of an object”

簡短而甜美:

當我右鍵單擊DBContext類並選擇“查看實體數據模型(只讀)”時,出現一個彈出對話框,顯示“對象引用未設置為對象的實例”,這沒有顯示為異常或輸出我正常編譯並運行代碼時出錯; 實際上,當我從正在測試所有內容的控制台應用程序查詢數據庫時,關系和類似乎運行良好。

有誰知道我為什么會收到這個錯誤? 此外,是否有任何工具可以幫助驗證我的數據模式? 我偶爾會收到一些指出缺陷的錯誤,但通常我不必運行查詢來測試問題。 任何建議表示贊賞!


較長版本:

我一直在努力將EF數據庫優先的設計者數據模型從現有數據庫模型切換為代碼優先的模型。 我已經將約80個實體映射到POCO類,並使用流利的API至少定義了許多關系。 我從在數據庫上運行Visual Studio向導的腳手架類開始,但效果很好,但是我一直在進行大量的重構以使代碼庫可用於新模型。

無論如何,我現在正在通過一次添加一個實體來測試數據模型,以便我知道哪些POCO實體和關系正在引起麻煩。 我想使用EF電動工具來幫助驗證/可視化模型,但它們給出了我上面描述的錯誤。 再次感謝您的幫助。

這篇文章指出了我正確的方向

EF Power Tools對連接字符串很敏感。 在我的情況下,我發現如何在DbContext類中引用conn字符串有所不同:

    internal class MyContext : DbContext
    {
    //Both Migrations and EF PowerTools were okay with this…
    public MyContext() : base(“name=MyConnStringName”)

    //Migrations was okay with this, but EF PowerTools Throws “object reference not set to an instance of an object” in a dialog box… Very confusing :s
    public MyContext() : base(ConfigurationManager.ConnectionStrings[“MyConnStringName”].ConnectionString)

暫無
暫無

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

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