一个大项目,为什么还建一个BLL层.usl如何调用bll呀,说明一下好吗.我有一点不习惯.是不是把所有的业务放到一起好管理.
我拿不清楚了/大家给我说一个好码.哪有这个好的说明文档.

解决方案 »

  1.   

    把所有的业务放到一起是好管理,可是后期不易维护!!!举例说明:
    1、表示层:a.dll-> Test.a -> getData()
       逻辑层:b.dll-> Test.b -> getData()
       数据层:c.dll-> Test.c -> getData()Test为命名空间
    a、b、c为类名2、在a.dll中,
       Test.a objB = new Test.b();
       xxx = objB.getData();3、在b.dll中,
       Test.c objC = new Test.c();
       xxx = objC.getData();
       return xxx;4、在c.dll中,定义一个getData的方法,返回指定的数据
       ...
       return xxx;
      

  2.   

    http://www.cnblogs.com/renyu732/archive/2005/06/14/174357.html
      

  3.   

    Web 层 Web 层为客户端提供对应用程序的访问。这一层是作为 Duwamish.sln 解决方案文件中的 Web 项目实现的。Web 层由 ASP.NET Web 窗体和代码隐藏文件组成。Web 窗体只是用 HTML 提供用户操作,而代码隐藏文件实现各种控件的事件处理。 业务外观层 业务外观层为 Web 层提供处理帐户、类别浏览和购书的界面。这一层是作为 Duwamish.sln 解决方案文件中的 BusinessFacade 项目实现的。业务外观层用作隔离层,它将用户界面与各种业务功能的实现隔离开来。除了低级系统和支持功能之外,对数据库服务器的所有调用都是通过此程序集进行的。 业务规则层 业务规则层是作为 Duwamish.sln 解决方案文件中的 BusinessRules 项目实现的,它包含各种业务规则和逻辑的实现。业务规则完成如客户帐户和书籍订单的验证这样的任务。 数据访问层 数据访问层为业务规则层提供数据服务。这一层是作为 Duwamish.sln 解决方案文件中的 DataAccess 项目实现的。 
      

  4.   

    代码示例: 以下是两种不同处理路径的代码示例: 获取商品目录 表示层调用业务外观层: productSystem = new ProductSystem(); categorySet = productSystem.GetCategories(categoryID); 业务外观层直接调用数据层: public CategoryData GetCategories(int categoryId) 

    if ( dsCommand == null ) 

    throw new System.ObjectDisposedException( GetType().FullName ); 

    return FillCategoryData("GetCategories", "@CategoryId", categoryId); 
    } 添加定单 表示层调用业务外观层: public void AddOrder() 

    ApplicationAssert.CheckCondition(cartOrderData != null, "Order requires data", ApplicationAssert.LineNumber); 
    ApplicationLog.WriteTrace("Duwamish7.Web.Cart.AddOrder:\r\nCustomerId: " + 
    cartOrderData.Tables[OrderData.CUSTOMER_TABLE].Rows[0][OrderData.PKID_FIELD].ToString()); 
    cartOrderData = (new OrderSystem()).AddOrder(cartOrderData); 
    } 业务外观层调用业务规则层: public OrderData AddOrder(OrderData order) 

    ApplicationAssert.CheckCondition(order != null, "Order is required", ApplicationAssert.LineNumber); (new BusinessRules.Order()).InsertOrder(order); 
    return order; 
    } 业务规则层调用数据层: public bool InsertOrder(OrderData order) 

    //此处省略复杂的处理逻辑 
    if ( isValid ) 

    using (DataAccess.Orders ordersDataAccess = new DataAccess.Orders()) 

    return (ordersDataAccess.InsertOrderDetail(order)) > 0; 


    else 
    return false; 

      

  5.   

    要根据具体需求而定:一班分为五层比较合理:表现层;控制层;业务逻辑层;数据实体层;物理实体层。很多j2ee就根据这五层展开的;有的在这五层加安全处理层.
      

  6.   

    请查看我的回复。
    http://community.csdn.net/Expert/topic/4298/4298974.xml?temp=.3524897