.net, 怎么在BLL层和DAL层中加入IDAL层的,具体些,最好写一些代码比较直观

 我来答
a405191552
2017-02-16 · TA获得超过398个赞
知道小有建树答主
回答量:124
采纳率:0%
帮助的人:145万
展开全部
BLL:
public class TestBll
    {
        ITestDal dal = TestFactory.CreateDal();
        public string GetData()
        {
            return dal.GetData();
        }
    }
    
    IDAL:
    public interface ITestDal
    {
        public string GetData();
    }
    
    DAL:
    public class TestDal : ITestDal
    {
        public override string GetData()
        {
            return "test";
        }
    }
    
    Factory:
    public class TestFactory
    {
        public static ITestDal CreateDal()
        {
            return new TestDal();
        }
    }
    
    关系:BLL要调用DAL方法不是直接生成DAL对象去调用,而是通过中间的factory生成,IDAL是为了保证耦合度。
    这只是最简单的一种调用,可以继续优化,比如配置文件+反射+缓存。
    架构、设计模式之类的学习需要多实践,只有实践了才能发现一些问题,如性能,代码冗余等。
追问
有的说不同数据库生成不同的dal对象这个怎么弄,它是怎么判断不同数据库的,怎么生成?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式