今天天气真好~~Smile Smile and Smile
这天要继续完善数据库备份模块啊。
还要一些需要改进的地方:
1. 备份时需要写入备份数据表的信息,以待还原时自动还原到相应的数据表
2. 备份类的方法内聚不高,在方法粗细上仍需要继续改进。
3. 对基础数据备份向导的操作,总共有70多个表需要备份,难道要一个一个表去写吗?思考一个方案让程序可以自动化完成。比如说写一个容器,将这些数据表对应的实体类类型放进去。
4. 这些做好之后,还要有一个地方,就是取消备份。这里应该跟线程的杀死有关吧。
-------------------------------------------开始做吧----------------------------------------------------------------------
11:00 -------测试用过了! 想法是: 利用Type类型,将实体类类型对象序列化出去,写到文件中,读取出来后在以其为参数来还原后面的实体类对象。
11:48-------写一个静态容器类,每一类基础数据(如权限数据,用户数据等)分别对应一个容器List<Type>,然后写一个静态构造函数来为这些容器初始化,添加实体类类型对象。
静态构造函数:用于初始化静态成员,由.net运行库在创建类对象是执行(感觉类似java中的静态代码块),不确保静态构造函数什么时候执行,但是可以确保它至多运行一次,在代码引用类之前执行。通过在第一次调用类成员之前执行。
没有修饰符,不带任何参数!只访问静态成员!
15:06 --------终于写完静态容器类了。70多个表 的添加加注释。两个字:麻烦。
17:00--------遇到大问题了。原本想将利用Type类型记录实体类类型,现在发现,使用这些Type,无法转换为类实例,也无法作为参数写入到泛型模版方法中,shit.。还在想办法解决。
17:29---------用反射可以解决泛型方法的动态调用这个问题的!参详一下这个网址:
http://hi.baidu.com/swanky/blog/item/21093ac727f039d8d00060fc.html
泛型方法的动态调用已经解决了!
然而还有一个动态类型的生成~~~~~~的问题~~~~~