一个计算租赁费的web程序。如果把DAL做成一个解决方案, DAL下面建立一个 “费用”的项目。 DAL下的“费用”项目主要目的是从数据库中取出来房屋的基本信息供 BLL层用,和更新租赁的到期日期。
同时,如果把BLL也做成一个解决方案 而BLL层也有个 “费用”的项目。这个“费用”项目的主要目的是获得DAL层“费用”项目提供的的房屋基本信息,进而进行逻辑计算,计算出租赁费。那么,把BLL里添加对DAL里的项目时,就会出现已经此项目名,不能重复添加, 那么直能添加引用了吗?而添加引用,稍微修改下DAL下的 “费用”项目,就要重新生成,很麻烦。那么只能吧DAL 和 BLL 下面的 表示同一个模块的取不同的项目名字吗? 比如“DAL费用” “BLL费用”?同时附带问一个问题,如果一个解决方案,比如DAL下有多个项目,如何只生成一个.dll?

解决方案 »

  1.   

    一般java才使用这种形式 DAL费用,BLL费用。因为java不存在名字空间的概念。在c#项目当中,首先要建立类库,类库DAL,类库BLL在类库下建立类,费用,如果费用建立在 类库DAL下面,那么它的名字空间就是DAL
      

  2.   

    现在不但java有,就连php都有命名空间了
      

  3.   

    不要出现名称完全一致的,要不然你怎么区分这个是DAL层的还是BLL层的呢?完全重名的文件是不能多次引用的。
    建议可以这样做,
    建立项目的时候写:费用.DAL,逻辑层的就取名叫 费用.BLL 这样的话.Net命名空间就是 费用.DAL,费用.BLL
    不管是你以后维护,还是开发,都比较清楚,至少知道引用的是DAL层的东东还是BLL层的东东,
    希望对你有帮助。
      

  4.   

    不同的项目可以理解成不同的层
    必须起不同的名称才能互相区分
    一个项目生成一个DLL,这是.Net决定的
    但是可以通过接口实现不同的DLL调用
      

  5.   


    因为你在 Bll 层添加了对 Dal 层的引用。
    如果在 Bll 层存在 Dal 中的同名文件,而你又在当前同名文件中引用了 Dal 层的同名文件就会报
    “类型不确定、、、什么什么的”因为他不知道你到底是要使用 Bll 还是 Dal 的文件不知道讲的如何。、、莫怪、、
      

  6.   

    一般个人命名时都是 Dals 下: 费用Dal
    Blls 下: 费用Bll简单明了。。
      

  7.   

    Retail.UI
      UsedInfo
      HouseInfo
    Retail.BLL
      UsedManager.cs
      HouseManager.cs
    Retail.DAL
      UsedServices.cs
      HouseServices.cs