仿照PetShop学习三层模式总结:
新建如下五个项目,他们的依赖关系如下:
1. BLL 依赖于---Model,IDAL,DALFactory
2. DALFactory 依赖于---IDAL,System.configuration
3. IDAL 依赖于---Model
4. DAL 依赖于---DBUtility,Model,IDAL
5. Model 依赖于---无
6. DBUtility 依赖于---System.configuration
7. 一个网站(文件系统)
也就是说要要这样子引用:BLL项目引用Model,DALFactory这几个项目
在新建项目时,项目属性中的程序集名称和默认命名空间要指定为要调用的命名空间,如在项目DAL中,右键点属性:
作如下设置:
才可以找到程序集,设置成下面的形式:
才能在DataFactory中这样子调用:
其中Web.config中<appSettings>配置节中的配置如下:
<add key="WebDAL" value="Adtion.DAL.sqlServer"/>
如果大家配置好项目属性如图为所示,自然在执行Assembly.Load
(path).CreateInstance (className)方法是能执行通过:找到名为Adtion.DAL.sqlServer的程序集,实例化其中名为Adtion.DAL.sqlServer.Staff_Unit的类;
否则,会弹出“未能加载文件或程序集“Adtion.DAL.sqlServer”……”的错误信息
注:比如你的项目属性配置如下
虽然你的 Staff_Unit 类是这样写在命名空间Adtion.DAL.sqlServer:
也会报错:未能加载文件或程序集“Adtion.DAL.sqlServer”……”,因为如上图(第二个图)配置,这时你真正的程序集为"sqlSeverDAL",而不是配置文件中<add key="WebDAL" value="Adtion.DAL.sqlServer"/>的 Adtion.DAL.sqlServer。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。