- 博客(15)
- 资源 (8)
- 收藏
- 关注
原创 也谈IDisposable接口(一)
IDisposable接口在.net里算是比较简单的接口,也是讨论的比较多的接口之一.下文总结了些自己的个人看法(如有不对之处,敬请拍砖)并引用了部分MSDN和其他博客的文字(如有侵权,请联系我,如若转载,请注明出处,谢谢。)首先来看MSDN中关于这个接口的说明:[ComVisible(true)]public interface IDisposable{ // Methods
2008-12-02 13:41:00 2584 5
原创 Galbanum之08总结
或许是项目的不可取性,也或许是个人的文字功能不佳,也或许是其他的或许.项目至今仍是一个人在做.但有幸的是,CSDN每一篇都有在首页推荐,在些感谢CSDN.在使用.net开发中,大部分都使用着自己公司的框架。并不像java那么一致,大凡使用着hiberante+spring。在.net界貌似这两样并不是非常火,很多人更习惯于使用适合于自己的项目的框架。我也曾使用过许多框架,心中也一直育浴着适合于自己
2008-12-23 14:10:00 1070
原创 Galbanum之Ioc(一)
IOC是Galbanum在08年推出的最后一个项目了,主要是模仿spring.net的IOC容器,但是spring.net不同的是,在使用的时候,只要在web.config或者app.config中只要配置对象映射xml文件的地方,例:源程序下载地址:http://download.csdn.net/source/897222configuration> configSec
2008-12-22 16:11:00 1017 1
原创 Galbanum之Logger(二)
在上面代码使用的时候还必须配置你的app.config或者是web.config,还要自定义一个OrmStyle继承ILoggerStyle接口我是控制台程序,配置是的app.config配置如下:"1.0" encoding="utf-8" ?> "Galbanum"> "LoggerStyle" type="Logger.LoggerStyleHandler,Logger"
2008-12-19 13:14:00 1170
原创 Galbanum之Logger(一)
一直在用log4net,最近也大致看了下里面的代码,总感觉配置文件复杂和格式太单一,于是最近自己封装了这个项目.功能当然比前面的相对单一,但是可以自定义样式和通过配置文件来设置Logger保存地址,现有Logger文件命名方法是DateTime.Now.Date.ToString("yyyyMMdd")+".log";该项目主要有3个接口,ILogger实现记录日志,ILoggerStyle自定
2008-12-19 12:54:00 1036
原创 也谈IConfigurationSectionHandler接口
IConfigurationSectionHandler接口也是大家讨论的比较多的接口之一,所以我在这也只能称为追追前人的尾巴,帮名为也谈.实现该接口的用途或许大家都有些了解,主要是在配置文件中自点定配置节点.在web中有web.config,在win或者控制台程序中有app.config.或者大家都使用过很多开源的框架,特别是一些IOC的项目,如:spring.net之类的.当你使用他们的时候,
2008-12-17 16:12:00 1932
原创 Galbanum之Cache(一)
asp.net提供缓存机制,但是很多的winForm和类库中也同样希望能使用上缓存,GalBanum.Cache正是提供这样的功能,主要有ICache接口,HashTableCache类继承ICache接口,CacheFactory工厂生产ICache,CacheEntity保存缓存的value和key,整体是通过静态Dictionary来保CacheEntity,然后再起子线程定时循环临控缓存是
2008-12-11 15:39:00 1154
原创 Galbanum 之Orm(四)
首先呢,来看一下Orm项目通过VS导出的类图,图片比较大,可以下载本地看,下面主要通过文字说说设计思想,1。基于Attribute来映射表结构,主是有TableAttribute和ColumnAttribute,在TableAttribute拥有一个ColumAttribute的List集合,第一次TableFactory通过反射实体的类特性获取TableAttribute并同时通过反射实体的属性
2008-12-10 20:34:00 1081
原创 Galbanum之Orm(三)
汗一把,第二次写这个三了,希望不会再发表失败的事情了。谢谢。这次主要是讲一讲通过实体来操作数据库的方法,这也是Orm的核心了,下面代码演示添加,更新,删除,查询等操作实体类参考一里面的Employee类,添加方法为IDataBase的Save(IEntity entity);,例子如下: private void Insert() { Employee emp=new Empl
2008-12-10 20:16:00 1454
原创 Galbanum之Orm(二)
这次主要说说Orm中不通过实体来操作数据库的使用方法:主要包括ExecuteNonQuery。具体其他的Execute的操作和ExecuteNonQuery类似web.config和表接上一篇。protected void Button1_Click(object sender, EventArgs e) { //添加 IDataBase dbase = Dat
2008-12-10 14:35:00 1096 3
原创 Galbanum 之Orm(一)
Galbanum为小巫主发开源项目,其中思想大凡是我个人的,不足之处凡请指出,联系方式:ojek@163.com首个Orm基本完成,因为个人能力和时候上的限制,源码注释主要为接口和一些虚类为主。 Orm.dll文件下载地址:http://download.csdn.net/source/858438Orm源程序下载地址:http://download.csdn.net/source/
2008-12-10 14:02:00 1137
转载 面向对象UML中类关系
如果你确定两件对象之间是is-a的关系,那么此时你应该使用继承;比如菱形、圆形和方形都是形状的一种,那么他们都应该从形状类继承而不是聚合。如果你确定两件对象之间是has-a的关系,那么此时你应该使用聚合;比如电脑是由显示器、CPU、硬盘等组成的,那么你应该把显示器、CPU、硬盘这些类聚合成电脑类,而不是从电脑类继承。类间的关系 网上关于此类的讨论非常多,发现对于该问题的理解各有各的说法,
2008-12-02 15:16:00 2300 1
原创 也谈IDisposable接口(四)
何种情况下类中具有封装了非托管资源对象时却不能释放呢?举个典型的例子,在ado.net的sqlCommand和sqlconnection按上面内容的理解SqlCommand为大致为:public class SqlCommand:IDisposable { private SqlConnection conn; public SqlCon
2008-12-02 14:43:00 1104
原创 也谈IDisposable接口(三)
前面两篇主要说了引起IDisposable 接口的实现方法和继承子类实现方法.这篇我们来讨论讨论对象应该怎么释放,该不该放在Dispose(false)里面释放,即析构函数的方法.在.NET的对象中实际上有两个用于释放资源的函数:Dispose和Finalize。Finalize的目的是用于释放非托管的资源,而Dispose是用于释放所有资源,包括托管的和非托管的。然而何种为非托管资源,何
2008-12-02 14:12:00 970
原创 也谈IDisposable接口(二)
关于资源释放,最后一点需要提的是Close函数。在语义上它和Dispose很类似,按照MSDN的说法,提供这个函数是为了让用户感觉舒服一点,因为对于某些对象,例如文件,用户更加习惯调用Close()。 然而,毕竟这两个函数做的是同一件事情,因此MSDN建议的代码就是: public void Close() { Dispose((); }这里直接调
2008-12-02 14:00:00 1036
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人