簡體   English   中英

實體框架4.1和通用IRepository <T> 模式和溫莎

[英]Entity Framework 4.1 and the Generic IRepository<T> Pattern and Windsor

實體框架RC1 DbContext查詢問題的跟進問題

我可以使用注入我的DbContext

    Component.For<IEFDataContextProvider>().ImplementedBy<EFDataContextProvider>().LifeStyle.PerWebRequest
        .DynamicParameters((k, d) => d["context"] = new PLSS.Models.PlssContext())

這很有效。 但是,這僅在上下文初始化程序不需要刪除數據庫的情況下有效。

    DropCreateDatabaseAlways<PlssContext>

產生錯誤

無法刪除數據庫“ PLSS.Models.PlssContext”,因為它當前正在使用中。

我認為這意味着該文件夾已在溫莎容器中使用。 這與LifeStyle是PerWebRequest有關嗎? 我也嘗試過Transient的相同問題。

另外,我將如何使用xml容器表示形式來創建組件。 我希望將它放在我的windsor.config中,以便可以根據需要進行更改。

我認為這等同於我使用流利的api的功能,但是我收到一個奇怪的錯誤,我將在下面發布。

  <component
  id="IEFDataContextProvider"
  service="AGRC.Common.Repositories.IEFDataContextProvider, AGRC.Common"
  type="AGRC.Common.Repositories.EFDataContextProvider, AGRC.Common"
  lifestyle="PerWebRequest">
  <parameters>
    <context>
      ${PlssContext}
    </context>
  </parameters>
</component>

<component
  id="PlssContext"
  type="PLSS.Models.PlssContext, PLSS.Models"
  lifestyle="transient">
</component>

程序集“ Microsoft.Web.Mvc,版本= 2.0.0.0,文化=中性,PublicKeyToken =空”中的程序集“ Microsoft.Web.Mvc,類型= Microsoft.Web.Mvc.MvcDynamicSessionControllerFactory”中的方法“ GetControllerSessionBehavior”沒有實現。

不知道這是怎么回事,但是...

這可能是一個典型的例子 在此處輸入圖片說明

認為我的服務器瀏覽器中存在活動連接。

您有針對MVC2編譯的程序集版本,並且您正在使用MVC3

暫無
暫無

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

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