示例#1
0
        //creator
        public override ProductInterface.IProduct GetDALProduct()
        {
            ProductInterface.IProduct product = null;
            //ruta del assemble desde el appConfig
            var assemblyPath = System.Configuration.ConfigurationManager.AppSettings["Product"];
            //aqui cargo el assemble en memoria
            var assemblyObject = System.Reflection.Assembly.LoadFrom(assemblyPath);
            var productType    = assemblyObject.GetTypes().Where(T => typeof(ProductInterface.IProduct)
                                                                 .IsAssignableFrom(T)).FirstOrDefault();

            if (productType != null)
            {
                product = assemblyObject.CreateInstance(productType.FullName) as ProductInterface.IProduct;
            }


            return(product);
        }
示例#2
0
 public string GetIdentity(ProductInterface.IProduct product) => product.GetType().FullName;