【问题标题】:Repository Pattern and 3 Tier Architecture存储库模式和 3 层架构
【发布时间】:2012-02-13 19:51:00
【问题描述】:

我面临着与本问题中提到的相同的困境。

Repository Pattern in Layered Architecture

依赖注入是继续前进的方式吗? 这个 Patterns 适合 ASP.Net MVC 类型的框架吗?

我想知道业界如何在 3 层架构中实施存储库模式。

问候

【问题讨论】:

    标签: asp.net architecture design-patterns


    【解决方案1】:

    你刚才提到的问题已经给出了答案。你真的不需要在你的代码中直接引用 DAL,而不是这个你应该使用 IoC。这样,您可以轻松地分离层之间的依赖关系。并且使用 IoC 还可以对您的 BLL 存储库方法进行单元测试。

    问:依赖注入是继续前进的方式吗?这个 Patterns 适合 ASP.Net MVC 类型的框架吗?

    A:Repository Pattern 适用于 MVC。将存储库模式与 IoC/依赖注入一起使用的主要优点是分离关注层并使您的类可单元测试。

    问:我想知道业界如何在 3 层架构中实施存储库模式。

    答:如您提到的另一个问题中所述。 Repository Pattern in Layered Architecture。您可以尝试在业务逻辑层中实现存储库模式。在表示层中,您可以使用 IoC 设置您的类及其依赖项。

     public static class ServiceLocator
        {
            public static readonly IUnityContainer IoC = new UnityContainer();
    
            static ServiceLocator()
            {
                IoC.RegisterInstance(IoC, new ContainerControlledLifetimeManager());
            }
        }
    

    这是在 global.ascx 中设置 IoC 的方法

            ServiceLocator.IoC.RegisterType<ICampusRepository, CampusRepository>();
            ServiceLocator.IoC.RegisterType<IReasonRepository,ReasonRepository>();
    

    【讨论】:

    • 我能够通过使用 StructureMap 解决问题。谢谢Shoaib
    猜你喜欢
    • 2017-03-24
    • 1970-01-01
    • 2014-11-22
    • 1970-01-01
    • 1970-01-01
    • 2011-09-30
    • 1970-01-01
    • 2017-09-19
    • 1970-01-01
    相关资源
    最近更新 更多