NBear V3.3.6使用感受
2006-11-21 22:08
330 查看
NBear是博客园组织的第一个开源项目,创始人是Teddy's Knowledge Base,NBear的目标是通过吸收园子里很多朋友的开发经验和智慧,发展成为一个优秀的.NET开发框架,帮助大家提高开发效率,让大家的工作更加轻松。
今天,我准备在实际开发中使用NBear,但试用了后,觉得操作上有点复杂,需要进一步改进。
当我们使用NBear设计一个新的实体类时,我们需要进行以下的操作:
1、 在实际开发项目之外,创建一个新的实体设计项目(该项目只在设计时有用)。
2、 新建一个实体类进行设计。
3、 添加对NBear的引用。
4、 添加对实际项目的引用。
5、 设计实体元数据。
6、 编译。
7、 通过NBear.Tools.EntityDesignToEntity.exe生成实际的实体类(该实体类与设计时的实体类相差很大,增加了很多为了ORM而增加的代码)。
8、 在实际项目中,新建一个实体类文件。
9、 添加对NBear的引用,
10、 添加对实际项目的引用。
11、 将生成的实体类的代码复制到实体类文件中。
12、 通过NBear.Tools.EntityDesignToEntity.exe生成实体类的xml配置。
13、 将生成的实体类的xml配置复制到EntityConfig.xml中。
14、 在web.config中添加section与entityConfig配置。
15、 通过NBear.Tools.EntityDesignToEntity.exe生成创建数据库表的脚本。
16、 在数据库中创建数据库表的脚本。
17、 配置连接字符串。
18、 调用Gateway访问数据库。
当我们更改实体类的设计,即使是某个属性的类型,我们需要进行以下操作:
1、 打开实体设计项目。
2、 更改实体类的设计。
3、 通过NBear.Tools.EntityDesignToEntity.exe生成实际的实体类。
4、 用生成的实体类的代码覆盖来原来的实体类代码。
5、 通过NBear.Tools.EntityDesignToEntity.exe生成实体类的xml配置。
6、 用生成的实体类的xml配置覆盖原来EntityConfig.xml中相应的配置。
7、 手动修改数据库中相关字段。
我觉得理想的操作应该是:
设计一个新的实体类:
1、 在实际开发项目新建一个实体类进行设计。
2、 添加对NBear的引用。
3、 添加对实际项目的引用。
4、 设计实体元数据。
5、 配置连接字符串。
6、 调用Gateway访问数据库:在Gateway中,如果发现实体类对应的表不存在,自动根据实体类创建数据库表,在运行时自动生成原先通过NBear.Tools.EntityDesignToEntity.exe生成的代码(这只是想法,技术实现上的难度目前还不清楚)。
更改实体类的设计时:
1、直接在实际项目中打开实体类进行修改。
另外我觉得NBear可以提供一个轻量级的数据映射功能,假如已经设计好了实体类、数据库表、相应的存储过程,可以提供这样的调用方法:Gateway.Save<实体类>(实体类的实例,存储过程名称),通过存储过程操作数据,不用自动生成SQL语句,有时用户需要利用存储过程在性能和复杂查询上的优势。
今天,我准备在实际开发中使用NBear,但试用了后,觉得操作上有点复杂,需要进一步改进。
当我们使用NBear设计一个新的实体类时,我们需要进行以下的操作:
1、 在实际开发项目之外,创建一个新的实体设计项目(该项目只在设计时有用)。
2、 新建一个实体类进行设计。
3、 添加对NBear的引用。
4、 添加对实际项目的引用。
5、 设计实体元数据。
6、 编译。
7、 通过NBear.Tools.EntityDesignToEntity.exe生成实际的实体类(该实体类与设计时的实体类相差很大,增加了很多为了ORM而增加的代码)。
8、 在实际项目中,新建一个实体类文件。
9、 添加对NBear的引用,
10、 添加对实际项目的引用。
11、 将生成的实体类的代码复制到实体类文件中。
12、 通过NBear.Tools.EntityDesignToEntity.exe生成实体类的xml配置。
13、 将生成的实体类的xml配置复制到EntityConfig.xml中。
14、 在web.config中添加section与entityConfig配置。
15、 通过NBear.Tools.EntityDesignToEntity.exe生成创建数据库表的脚本。
16、 在数据库中创建数据库表的脚本。
17、 配置连接字符串。
18、 调用Gateway访问数据库。
当我们更改实体类的设计,即使是某个属性的类型,我们需要进行以下操作:
1、 打开实体设计项目。
2、 更改实体类的设计。
3、 通过NBear.Tools.EntityDesignToEntity.exe生成实际的实体类。
4、 用生成的实体类的代码覆盖来原来的实体类代码。
5、 通过NBear.Tools.EntityDesignToEntity.exe生成实体类的xml配置。
6、 用生成的实体类的xml配置覆盖原来EntityConfig.xml中相应的配置。
7、 手动修改数据库中相关字段。
我觉得理想的操作应该是:
设计一个新的实体类:
1、 在实际开发项目新建一个实体类进行设计。
2、 添加对NBear的引用。
3、 添加对实际项目的引用。
4、 设计实体元数据。
5、 配置连接字符串。
6、 调用Gateway访问数据库:在Gateway中,如果发现实体类对应的表不存在,自动根据实体类创建数据库表,在运行时自动生成原先通过NBear.Tools.EntityDesignToEntity.exe生成的代码(这只是想法,技术实现上的难度目前还不清楚)。
更改实体类的设计时:
1、直接在实际项目中打开实体类进行修改。
另外我觉得NBear可以提供一个轻量级的数据映射功能,假如已经设计好了实体类、数据库表、相应的存储过程,可以提供这样的调用方法:Gateway.Save<实体类>(实体类的实例,存储过程名称),通过存储过程操作数据,不用自动生成SQL语句,有时用户需要利用存储过程在性能和复杂查询上的优势。
相关文章推荐
- ASP:连接Access数据库的方法及使用感受
- 搜狗云输入法使用感受和实现原理初探
- Golang使用感受
- linux lseek函数使用感受
- Windows8预览版使用感受(二)
- PHP5.3.8 + Mysql5.5.18 + Nginx1.1.8 安装使用感受
- python3.6通过urllib模块使用post/get方法
- Myeclipse7.0 使用感受及注册码源代码(6.5和7.0)
- ubuntu9.1使用感受
- 四大图像库的使用感受:OpenCV/FreeImage/CImg/CxImage
- Apple Watch使用感受杂谈——1
- 浅谈使用GWT + GXT开发项目的感受
- P2P终结者使用感受
- 转载:使用感受: VC2005 VC6.0
- 开源 IDE CodeBlocks 使用感受
- Ubuntu 12.04使用感受
- Ajax.net 使用初体验的感受和记录
- Ubuntu 9.04使用感受(升级到了10.04)
- python3.6 使用pycha进行图表绘制(由于pycha长期未更新无法直接兼容python3.6,需做部分修改)
- 使用一年ESB感受