初尝.net 2.0的范型
来源:互联网 发布:php urlencode 符号 编辑:程序博客网 时间:2024/05/21 05:38
虽然从这个月开始又重新用.net,但抱着稳重的心态,我现在用的还是.net 2.0,但.net3.0的范型没多大改进。
以下是利用.net的范型写的一段创建对象的代码
- /// <summary>
- /// 创建Dal对象
- /// </summary>
- /// <typeparam name="T"></typeparam>
- /// <returns></returns>
- public static T CreateDAL<T>()
- {
- Type type = typeof(T);
- string className = string.Format("{0}.{1}", path, type.Name);
- object ret = null;
- //先从缓存里看看有没有此对象
- if(dalObjectCachePool.ContainsKey(className))
- {
- ret = dalObjectCachePool[className];
- }
- else
- {
- //从缓存里找不到,创建一个
- ret = Assembly.Load(path).CreateInstance(className);
- dalObjectCachePool.Add(className, ret);
- }
- return (T)ret;
- }
/// <summary> /// 创建Dal对象 /// </summary> /// <typeparam name="T"></typeparam> /// <returns></returns> public static T CreateDAL<T>() { Type type = typeof(T); string className = string.Format("{0}.{1}", path, type.Name); object ret = null; //先从缓存里看看有没有此对象 if(dalObjectCachePool.ContainsKey(className)) { ret = dalObjectCachePool[className]; } else { //从缓存里找不到,创建一个 ret = Assembly.Load(path).CreateInstance(className); dalObjectCachePool.Add(className, ret); } return (T)ret; }
以下是客户端使用方法:
- MobileTemp mobileTempBll = DataAccess.CreateBll<MobileTemp>();
MobileTemp mobileTempBll = DataAccess.CreateBll<MobileTemp>();
多么优雅。Java里的范型则没这么从容了,必须要将范型参数定义到类里。
- 初尝.net 2.0的范型
- java 的范型的研究 与.net作比较
- .Net 范型基础
- .NET中的范型
- asp.net 2.0的新功能!
- asp.net 2.0 的dataformatstring
- ASP.NET 2.0的部署
- Asp.Net 2.0 的 Profile
- Asp.Net 2.0的Profile
- .NET 2.0的绘图功能
- .NET 2.0 的压缩功能
- .NET 泛型的问题
- ASP.NET 2.0 树型数据的显示源代码
- .Net Framework 2.0泛型的反射使用
- .net 2.0中使用泛型的一种技巧
- ASP.NET 2.0的缓存技术简介 [Asp.Net]
- .NET 1.1 & .NET 2.0中 模拟用户登录的实现
- ASP.NET 2.0中,一个ASP.NET页面的生命周期
- 第一次失败的面试
- IBM Cognos8 处理父子维度浅析
- Google翻译一点有趣的事
- 我的c#之路
- .NET中如何访问被系统保护的文件夹
- 初尝.net 2.0的范型
- 一个不错的开源动态代理类库
- 获取MYSQL数据库大小和 路径
- Web 攻击汇总及攻击方式整理(1)-跨站脚本攻击(XXS攻击)
- 大数据量查询的优化
- 年尾贴
- setsockopt()改善程序的健壮性
- 自动生成采购订单号
- 很有深意的12句话!