簡體   English   中英

調用使用實體框架的DAL

[英]Calling DAL that uses Entity Framework

我有一個Web API應用程序正在調用DAL庫。 DAL庫使用實體框架與SQL數據庫進行交互。 現在,我需要在Web API項目中設置數據庫的連接字符串。 這也需要我在Web API項目中安裝EF。 有什么方法可以在Web API項目中設置連接字符串而無需安裝EF?

您可以包裝DbContext,這樣,DAL項目就不會公開任何與EF相關的組件。 這樣,您不必在引用DAL項目的每個項目中都安裝EF。

public class DataContextWrapper : IDisposable {
    public DataContextWrapper() {
        DataContext = new DataContext();
    }

    internal DataContext DataContext { get; private set; }

    public void Dispose() {
        DataContext.Dispose();
    }
}

只要您的存儲庫等也位於DAL項目中,並且它們不返回數據庫實體而是模型,就可以了。

我在我的Web api項目中使用了EF使用的相同連接字符串。 我在網絡api項目中引用了EntityFramework.SqlServer.dll。 現在,它可以工作了。

暫無
暫無

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

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