2013-05-21 43 views
1

決定重新開始重新創建網站,以便它是ASP.NET MVC Web應用程序。我們最初使用實體框架,認爲它仍然使用它,因爲它工作得很好。在做一些閱讀時,注意到沒有像MVC應用程序的App_Code /文件夾那樣的東西,並且大多數人正在爲他們的需求創建類庫。所以我最終做的是在同一個解決方案中創建我的MVC應用程序和類庫,並且MVC應用程序引用了類庫。類庫中有我的EDMX實體數據模型文件,因爲我的一些類引用了它,我認爲在庫中引用它是最容易的。所以here is a picture到我的解決方案佈局是。但是當我構建並運行網站時,我會在引用實體數據模型的頁面上出現錯誤。 Here is a picture錯誤是什麼。在引用的項目中包含實體數據模型時的錯誤

所以我想,如果我將EDMX放入我的模型文件夾中,因爲錯誤看起來像是抱怨沒有找到實體。 Here's a picture現在我的解決方案與此舉。但是現在,我收到了一個不同的錯誤(picture)。我對從這裏走向何處感到不知所措。我是否已經設計出一切,並設計出適當和最有效的方法來完成它?如果沒有人可以給我一些建議?

謝謝,非常感謝!

回答

2

是的,你應該可以在你的主項目中擁有類庫和引用的edmx。第一個錯誤可能是由於連接字符串不正確(請檢查blog post),但也可能以某種方式更改了edmx文件的構建操作,請確保它是「Entity Deploy」。

第二個錯誤可能是因爲您將edmx從您的類庫複製到了Models文件夾中,並且它仍然引用舊的名稱空間。要解決該問題,請在設計器視圖中打開edmx並單擊背景。屬性窗口中的一個屬性是命名空間,確保將其設置爲您想要保留它的新位置。

編輯: 有些事情嘗試:

  • 清理並重建項目
  • 刪除錯誤消息中引用ASP.NET臨時文件夾
  • 仔細檢查您的CSHTML文件對URG_MVC.Models命名空間的舊引用。例如,在錯誤的行應該是IEnumerable<URGLibrary.Proposal>
  • 右鍵單擊EDMX文件,並選擇運行自定義工具來生成模型文件
+0

感謝您的答覆。我修正了第一部分,但是這樣做後,即使EDMX文件位於類庫中,並且具有正確的命名空間(類庫的命名空間),我仍然得到第二個錯誤。 – Chiggins

+0

如果將它移動到類庫中,錯誤文本現在可能會有所不同。你可以編輯你的文章:新錯誤的圖片,當前解決方案佈局的圖片和模型屬性窗口的圖片,名稱空間中的圖片。應該能夠幫助你解決這個問題。 – ChrisO

+0

下面是包含您請求圖片的相冊的鏈接:http://imgur.com/a/yx9iD – Chiggins

相關問題