Mindsware动态数据对象平台v0.2版发布

Released version 0.2 at 2003.12.20

经过将近四天不分昼夜的奋战,终于按照几个热心朋友的建议,做了如下改进:
1. 添加一个用于存放数据库定义的Mindsware.Core.Db.DBContext类。

2. 按照AbstractFactory虚拟类工厂模式添加了一个Mindsware.Core.Db.DBFactory
类,用户按照不同的ProviderType采用Reflect方式,在runtime初始化各种
底层数据类的实例,而不是在Design time就引用诸如Oracle.DataAccess之类的
assembly。使用了IDBFactory接口,作为以后扩充对更多的Provider(例如
ODBC等)的支持时修改成更标准的AbstractFactory模式之用。

现在,无需引用Oracle.DataAccess的assembly即可编译和运行,如果要使用
OracleDataProvider,只需要按照示例项目中的web.config那样设置好到Oracle
数据库的连接定义,给出Oracle.DataAccess.dll的文件具体路径即可。

3. 修改了O-R Mapping层的所有对象,以适应这种变化,光这个花了我十多个小时
来修改和测试。

4. version 0.1中,当修改了Global类里边的缺省DBContext之后,必须重启整个IIS
以反映变化,现在不用了。修改Global.Application_Start事件处理方法里边
的缺省连接之后,重新编译即可生效。如果不显式设定用哪一个DBContext,那么
会用名为default的DBContext,这也是为什么

 1<dbcontexts>设置里边至少要有   
 2一个<dbcontext name="default">的原因了。 
 3
 45\. 不仅可以一次性的很方便的在Global类里边设置全局缺省DBContext,而且可以   
 5单独为每一个DBObject的子类设置该子类所用的DBContext,也就是说,很容易在   
 6同一个项目中的不同DBObject子类中使用不同的数据连接,只要这些数据连接的   
 7数据库定义都在web.config文件中设置好就行。关于这个的用法,请参考   
 8MindswareTest示例里边的MindswareTest.DataObjects.Items2类的构造函数。 
 9
106\. 修改了web.config文件中数据库定义(<dbcontexts>)的格式,并且写了一个   
11Mindsware.Core.Misc.ContextSectionHandler作为SectionHandler来处理这种自   
12定义配置文件格式。 
13
147\. 数据库登录密码不再以明文显示,而改用DES加密算法加密后存放在配置文件里边。 
15
168\. Bug fix: For OracleDataProvider, when try to insert or update a BLOB column   
17with a null uploaded file, a OCI Lob exception occurred. 
18
199\. Bug fix: In query datasheet, when sumbit a query with date conditions,   
20the result page displayed a "Bad date format" error and did not perform   
21the expected query. 
22
23Released version 0.1 at 2003.12.14 
24
25感谢SMTH dotnet版的nineteen版主和我的老朋友kangdh :) 
26
27到这里下载所有源码及示例:   
28http://www.cnb4c.com/Mindsware_DynamicDataObjects_v0.2.rar 
29
30论坛地址:   
31http://www.mindsware.com/bbs/list.asp?boardid=6</dbcontexts></dbcontext></dbcontexts>
Published At
Categories with Web编程
Tagged with
comments powered by Disqus