我有一个调用DAL库的Web API应用程序。 DAL库使用Entity Framework与SQL数据库交互。现在,我需要在Web API项目中将连接字符串设置为数据库。这要求我在Web API项目中安装EF。有什么办法可以在Web API项目中设置连接字符串而无需安装EF?
答案 0 :(得分:0)
您可以包装DbContext,这样,DAL项目不会暴露任何与EF相关的组件。通过这样做,您不必将EF安装到您引用DAL项目的每个项目中。
public class DataContextWrapper : IDisposable {
public DataContextWrapper() {
DataContext = new DataContext();
}
internal DataContext DataContext { get; private set; }
public void Dispose() {
DataContext.Dispose();
}
}
只要您的存储库等也在DAL项目中并且它们不返回数据库实体而是模型,您就可以了。
答案 1 :(得分:0)
我在我的web api项目中使用EF使用的相同连接字符串。我在web api项目中引用了EntityFramework.SqlServer.dll。现在,它有效。