PetShop学习记录----数据库访问
来源:互联网 发布:贵阳房价上涨知乎 编辑:程序博客网 时间:2024/05/17 23:26
背景知识:利用 反射代替new
Assembly.load(程序集).CreateInStance(命名空间.类),这里的程序集读取的是Web层bin文件下对应的DLL,所以必须把对应的DLL放入bin文件夹下
PetShop实例:
界面层访问BLL层,BLL通过反射newIproduct对象,访问SQLSERVERDAL.Product的getproduct方法
class Program
{
static void Main(string[] args)
{
BLL.Product p = new BLL.Product();
Console.WriteLine( p.GetProduct("11"));
}
}
namespace BLL
{
public classProduct
{
private staticreadonly IDAL.IProductdal = DALFactory.DataAccess.CreateProduct();
public stringGetProduct(string prodid)
{
return dal.GetProduct(prodid);
}
}
}
namespace DALFactory {
private static readonly string path = ConfigurationManager.AppSettings["WebDAL"];
public sealed class DataAccess {
public static IDAL.IProduct CreateProduct() {
string className = path + ".Product";
//利用反射技术,动态加载指定类型
return (PetShop.IDAL.IProduct)Assembly.Load(path).CreateInstance(className);//通过修改配置文件(web.config)动态加载类
}
}
}
namespace SQLServerDAL
{
public classProduct :IProduct
{
public stringGetProduct(string id)
{
return "PROD"+ id;
}
}
}
同时需要 IProduct接口
namespace IDAL
{
public interfaceIProduct
{
string GetProduct(stringid);
}
}
- PetShop学习记录----数据库访问
- PetShop数据访问层之数据库访问设计
- PetShop数据访问层之数据库访问设计
- PetShop数据访问层之数据库访问设计
- PetShop数据访问层之数据库访问设计
- PetShop数据访问层之数据库访问设计
- PetShop数据访问层之数据库访问设计
- PetShop数据访问层之数据库访问设计
- PetShop数据访问层之数据库访问设计
- PetShop数据访问层之数据库访问设计
- PetShop数据访问层之数据库访问设计
- PetShop数据访问层之数据库访问设计
- PetShop数据访问层之数据库访问设计
- [wayfarer]PetShop数据访问层之数据库访问设计
- PetShop数据访问层之数据库访问设计
- PetShop数据访问层之数据库访问设计
- PetShop数据访问层之数据库访问设计
- (二)PetShop数据访问层之数据库访问设计
- java日常小笔记
- C语言:day12~通讯录
- [Elasticsearch]查询语法速查
- <iOS>AFNetworking使用介绍
- 【Java开发】--jdom解析xml-创建xml
- PetShop学习记录----数据库访问
- 单链表排序
- 趣谈直方图均衡化和规定化
- Java发送邮件javax.mail
- 《数据结构(严蔚敏版)》学习笔记(三)——栈实现数制转换
- Memcache基础教程 && Ubuntu 安装Memcache服务
- Big String 二分法的问题
- 网页中多个table嵌套的一些小技巧
- A-B Game