在三层中需要层与层之间的引用,但是有的时候当你引用了之后,还不是能用,举个例子来说,UI层需要引用BLL层来进行展示,当从UI层引用BLL层的时候,看到了BLL层已经引用进来了,但是在写代码的过程中还是不能使用BLL层中的类。这是因为程序集中的命名空间不同或者层中的类是私有的。
命名空间
命名空间是程序设计者命名的内存区域,程序设计者根据需指定一些有名字的空间域,把一些全局实体分别存放到各个命名空间中,从而与其他全局实体分隔开。通俗的说,每个名字空间都是一个名字空间域,存放在名字空间域中的全局实体只在本空间域内有效。名字空间对全局实体加以域的限制,从而合理的解决命名冲突。
因为存放在名字空间域中的全局实体只在本空间域内有效,所以如果层与层的命名空间是不一样的话那样也无法直接把BLL层引用到UI层中。
访问修饰符
访问修饰符是对访问权限的一个限制,如果你的命名空间是统一的情况下,还是不能够正常引用的话,那应该就是你没有写访问修饰符的原因了,因为我们最终要用到的是BLL层中的类,而类如果不写访问修饰符的话,系统会自己赋予类一个默认的修饰符。
类的默认修饰符是private,private这个修饰符是私有的修饰符也就是只能在类的内部才可以访问,
所以说我们是访问不到BLL层中某一个类的。
如果想引用的话就必须把私有的访问修饰符改为公有的访问修饰符这样我们就能正常引用了。