现在建三个项目分别为a,b,c现一个网站web 
引用关系如下:
web引用a
a引用b
b引用c
现在在web的bin文件下,也有就是有a,b,c的程序集
查看web页属性的引用,就是a.b,c都引用了,想再添加B。C的引用时,提示,己添加,没法再添加。现在有一个问题就是:b,c都引用了。在web就可以直接new b或c内面的对象了。
想一想,如果是三层构架,a为BLL,b为dal层
如果web层可以引用 b层的话????那?????

解决方案 »

  1.   

    web要引用b层,还是需要前面添加引用using 的。三层调用是一种解决问题的思路,不是必须要用三层来这么做,要做到理解这种想法而不是只看到表象。
      

  2.   

    去Web的属性里把引用删除掉(不是在bun文件下删)然后从新添加,然后在using…….BLL
      

  3.   

    1、是的,三层架构要理会再用,其实三层架构还可以进行优化的。
    2、BLL层和DAL层都应该引用到Modle层,正所谓面向对象,在每个层中传递的也都应该是对象的形式,
      

  4.   

    1喽正解,虽然添加了引用但是,你也要用using啊, 他们之间的引用关系是这样的,BLL引用DAL和ModelDAL引用 Model和 DBUtility  Model不引用 web引用BLL DAL Model 自己见解,如果不对,请批正,其实几层看情况了,有时候感觉单层是最方便的,而且速度也很快,但是要是遇到大项目的话,就吃不消了,所以,不要一味的追求几层,
      

  5.   

    先引用
    再USING
    但一切都不是死的
      

  6.   

    可以用动软.NET代码生成器  3层什么的全部弄好了
      

  7.   

    是的,我也是这个意思,但有一个问题就是,bll引用,DAL层,web引用bll层,bin内也就有bll,dal两个程序集,查看引用,dal层,也被web引用了,为什么会这样???
      

  8.   

    添加项目引用 
    不要直接添加dll引用 项目间引用关系要搞清楚
      

  9.   

    父含子呗  B引用C B包括C A 引用B(B包含C) 所以A包含B和C了。
    这个也不用那么规范吧?直接Using也行 引用也行。涉及的类库少些不需要考虑这些。
    自己知道怎么回事就可以啦。
      

  10.   

    因为DAL被BLL层调用过  所以UI层引用BLL层  生成的时候 DAL也会在BIN目录下面  他们之间是一层层调用的 分工明确
      

  11.   

    额?还没结贴吧,??所谓什么什么层的,从界面到最底层代码的调用,不要跨界。你的那从Web引用a和model就行了,其余的应用层别去调用,不一定说非要这样,但这样做的目的,无非就是6个字“高内聚,低耦合”。
      

  12.   

    引用时没关系的,主要是分三层的话,为的是业务逻辑分明。这样可以在BLL层更好的实现业务
      

  13.   


    表示层如果直接引用DAL层的话,确实有点乱了...LZ检查下自己的操作
      

  14.   

    请不要会不要留言。
    没有直接引用DAL层,是引用BLL,BLL引用DAL层,