三层中 dalFactory 为什么要用到assembly呢?assembly用在这里的作用是什么呢?翻看了很多资料,但是都不能确定!namespace DALFactory
{
       /// <summary>
       /// 工产模式实现文章接口。
       /// </summary>
       public class Content
       {
              public static IDAL.IContent Create()
              {
                     // 这里可以查看 DAL 接口类。
                     string path = System.Configuration.ConfigurationSettings.AppSettings["WebDAL"].ToString();
                     string className = path+".Content";
                    
                     // 用配置文件指定的类组合
                     return (IDAL.IContent)Assembly.Load(path).CreateInstance(className);
              }
       }
}

解决方案 »

  1.   

    动态加载一些模块,比如说你的程序在开发时,并不确定用户会使用什么样的数据库,那么,你在抽象出对数据的访问接口之后,你上层的程序只要通过这个接口来访问数据就行了,但实际与数据库交互的部分,肯定是独有的,比如 Oracle、SQL Server、MySQL 等,这时你就要为每种数据库都提供相应的访问模块。而在实际布署后,要加载哪一个模块呢?通过在配置文件中做一下配置,系统根据配置动态加载相应的配件,这样就不用你把程序改来改去了,换数据库只要改一下配置就行。