日期:2014-05-18 浏览次数:20412 次
namespace Taeheesoft.DALFactory { public sealed class DataAccess { private static readonly string assemblyPath = ConfigurationManager.AppSettings["AssemblyDAL"]; //add key="AssemblyDAL" value="PetShop4.SQLServerDAL"/>//数据访问层(DAL)的程序集名称 private static readonly string namespacePath = ConfigurationManager.AppSettings["NamespaceDAL"]; // <add key="NamespaceDAL" value="Taeheesoft.SQLServerDAL"/>>//数据访问层(DAL)的命名空间 private DataAccess() { } /// <summary> /// Create a interface /// </summary> /// <remarks> /// 创建Demo 的数据层接口 /// </remarks> /// <returns> </returns> public static IDemo CreateDemo() { string className = namespacePath + ".Demo"; //命名空间+类名称=完整的类名称 例如:System+Int32=System.Int32 return (IDemo)Assembly.Load(assemblyPath).CreateInstance(className); //Assembly.Load加载程序集 //CreateInstance动态创建类(className) } } } //这段代码是根据程序集,命名空间和类名称动态的创建一个类,利用了设计模式中的简单工厂模式。 //IDemo是接口