当我在优化我们网站的应用程序架构时,遇到一个问题,我不知道最佳解决方案。
目前,我们有一个基于以下结构的小型dll:
Dal使用Business Objects传递给BLL,然后BLL再将其传递给使用此dll的应用程序。
只有BLL是公共的,所以任何包含此dll的应用程序都可以看到BLL。
开始时,这对我们公司来说是一个不错的解决方案。但是当我们在该Dll上添加越来越多的应用程序时,BLL就变得越来越大了。现在我们不想让其他应用程序看到来自其他应用程序的BLL逻辑。
现在我不知道最好的解决方案是什么。
首先我想到的是,将BLL移动和分离到其他dll中,这样我就可以将它们包含在我的应用程序中。但是那时Dal必须是公共的,这样其他dll才能获取数据...而且这似乎是一个好的解决方案。
我想到的另一种解决方案是,只需将BLL分隔成不同的命名空间,并仅在应用程序中包含您需要的命名空间。但是在这个解决方案中,如果您想要,您可以直接访问其他bll。
因此,我想听听您的意见。
目前,我们有一个基于以下结构的小型dll:
Database <-> DAL <-> BLL
Dal使用Business Objects传递给BLL,然后BLL再将其传递给使用此dll的应用程序。
只有BLL是公共的,所以任何包含此dll的应用程序都可以看到BLL。
开始时,这对我们公司来说是一个不错的解决方案。但是当我们在该Dll上添加越来越多的应用程序时,BLL就变得越来越大了。现在我们不想让其他应用程序看到来自其他应用程序的BLL逻辑。
现在我不知道最好的解决方案是什么。
首先我想到的是,将BLL移动和分离到其他dll中,这样我就可以将它们包含在我的应用程序中。但是那时Dal必须是公共的,这样其他dll才能获取数据...而且这似乎是一个好的解决方案。
我想到的另一种解决方案是,只需将BLL分隔成不同的命名空间,并仅在应用程序中包含您需要的命名空间。但是在这个解决方案中,如果您想要,您可以直接访问其他bll。
因此,我想听听您的意见。