我一直在寻找这个问题的答案,但之前提出的所有问题似乎都是一个复杂的变体,并且没有回答这个问题,所以我想我应该问一下。
我正在开发具有以下内容的三层应用程序......
- DAL - 使用实体框架的数据访问层
- BLL - 业务逻辑层
- Web 应用程序 - MVC Web 应用程序
我创建了一个实体框架模型、存储库类,我的连接字符串在 DAL App.Config 文件中。我现在已经在 BLL 中创建了我的第一个类,它引用了 DAL。在尝试测试以下非常基本的方法时,我收到与 BLL 中缺少连接字符串有关的错误。
public static List<DAL.Item> getItems() {
List<DAL.Item> result = new List<Item>();
DAL.Repositories.ItemRepository myRepository = new DAL.Repositories.ItemRepository();
result = myRepository.GetAll().ToList();
return result;
}
为什么 BLL 寻找连接字符串?我在这里错过了一些非常明显的东西吗?
如果我需要跨多个层包含连接字符串,这违背了 n 层结构的目的,那么最好的方法是什么?任何人都可以为我阐明这一点吗?