天天看点

NHibernate利用Mindscape.NHibernateModelDesigner实现数据库与实体之间的转换及操作一、Mindscape.NhibernateModelDesigner安装二、根据数据库表结构生成实体并通过实体进行操作三、根据实体生成数据库表结构并通过实体进行操作四、[NHibernate操作文档及demo]

环境:

&nbsp&nbspvisual studio 2010

&nbsp&nbsp在打开vs2010之后,我们可以在“工具”菜单下找到“扩展管理器,搜索:mindscape nhibernate model designer 下载安装即可。安装完成后,在向项目中添加新项时如果我们拉到最下方我们会看到如下界面:

NHibernate利用Mindscape.NHibernateModelDesigner实现数据库与实体之间的转换及操作一、Mindscape.NhibernateModelDesigner安装二、根据数据库表结构生成实体并通过实体进行操作三、根据实体生成数据库表结构并通过实体进行操作四、[NHibernate操作文档及demo]
NHibernate利用Mindscape.NHibernateModelDesigner实现数据库与实体之间的转换及操作一、Mindscape.NhibernateModelDesigner安装二、根据数据库表结构生成实体并通过实体进行操作三、根据实体生成数据库表结构并通过实体进行操作四、[NHibernate操作文档及demo]
NHibernate利用Mindscape.NHibernateModelDesigner实现数据库与实体之间的转换及操作一、Mindscape.NhibernateModelDesigner安装二、根据数据库表结构生成实体并通过实体进行操作三、根据实体生成数据库表结构并通过实体进行操作四、[NHibernate操作文档及demo]
NHibernate利用Mindscape.NHibernateModelDesigner实现数据库与实体之间的转换及操作一、Mindscape.NhibernateModelDesigner安装二、根据数据库表结构生成实体并通过实体进行操作三、根据实体生成数据库表结构并通过实体进行操作四、[NHibernate操作文档及demo]
NHibernate利用Mindscape.NHibernateModelDesigner实现数据库与实体之间的转换及操作一、Mindscape.NhibernateModelDesigner安装二、根据数据库表结构生成实体并通过实体进行操作三、根据实体生成数据库表结构并通过实体进行操作四、[NHibernate操作文档及demo]
NHibernate利用Mindscape.NHibernateModelDesigner实现数据库与实体之间的转换及操作一、Mindscape.NhibernateModelDesigner安装二、根据数据库表结构生成实体并通过实体进行操作三、根据实体生成数据库表结构并通过实体进行操作四、[NHibernate操作文档及demo]
NHibernate利用Mindscape.NHibernateModelDesigner实现数据库与实体之间的转换及操作一、Mindscape.NhibernateModelDesigner安装二、根据数据库表结构生成实体并通过实体进行操作三、根据实体生成数据库表结构并通过实体进行操作四、[NHibernate操作文档及demo]
NHibernate利用Mindscape.NHibernateModelDesigner实现数据库与实体之间的转换及操作一、Mindscape.NhibernateModelDesigner安装二、根据数据库表结构生成实体并通过实体进行操作三、根据实体生成数据库表结构并通过实体进行操作四、[NHibernate操作文档及demo]

&nbsp&nbsp左侧工具栏部分切换到【服务器资源管理器】,连接上你想要获取数据结构的数据库,就会看到展示出来的数据库内容:

NHibernate利用Mindscape.NHibernateModelDesigner实现数据库与实体之间的转换及操作一、Mindscape.NhibernateModelDesigner安装二、根据数据库表结构生成实体并通过实体进行操作三、根据实体生成数据库表结构并通过实体进行操作四、[NHibernate操作文档及demo]

&nbsp&nbsp拖动你想要的表到设计器主界面,如下图:

NHibernate利用Mindscape.NHibernateModelDesigner实现数据库与实体之间的转换及操作一、Mindscape.NhibernateModelDesigner安装二、根据数据库表结构生成实体并通过实体进行操作三、根据实体生成数据库表结构并通过实体进行操作四、[NHibernate操作文档及demo]

即可获取到数据库表对应的实体。

NHibernate利用Mindscape.NHibernateModelDesigner实现数据库与实体之间的转换及操作一、Mindscape.NhibernateModelDesigner安装二、根据数据库表结构生成实体并通过实体进行操作三、根据实体生成数据库表结构并通过实体进行操作四、[NHibernate操作文档及demo]
NHibernate利用Mindscape.NHibernateModelDesigner实现数据库与实体之间的转换及操作一、Mindscape.NhibernateModelDesigner安装二、根据数据库表结构生成实体并通过实体进行操作三、根据实体生成数据库表结构并通过实体进行操作四、[NHibernate操作文档及demo]
NHibernate利用Mindscape.NHibernateModelDesigner实现数据库与实体之间的转换及操作一、Mindscape.NhibernateModelDesigner安装二、根据数据库表结构生成实体并通过实体进行操作三、根据实体生成数据库表结构并通过实体进行操作四、[NHibernate操作文档及demo]
NHibernate利用Mindscape.NHibernateModelDesigner实现数据库与实体之间的转换及操作一、Mindscape.NhibernateModelDesigner安装二、根据数据库表结构生成实体并通过实体进行操作三、根据实体生成数据库表结构并通过实体进行操作四、[NHibernate操作文档及demo]

小注:

&nbsp&nbsp如果不生成配置文件直接运行第4步中代码,会报出下面的错误:

NHibernate利用Mindscape.NHibernateModelDesigner实现数据库与实体之间的转换及操作一、Mindscape.NhibernateModelDesigner安装二、根据数据库表结构生成实体并通过实体进行操作三、根据实体生成数据库表结构并通过实体进行操作四、[NHibernate操作文档及demo]

两者之间的操作与之前一样

&nbsp&nbsp

,那么生成表的主键字段是uniqueidentifier类型的:

NHibernate利用Mindscape.NHibernateModelDesigner实现数据库与实体之间的转换及操作一、Mindscape.NhibernateModelDesigner安装二、根据数据库表结构生成实体并通过实体进行操作三、根据实体生成数据库表结构并通过实体进行操作四、[NHibernate操作文档及demo]

&nbsp&nbsp如果在主键类型你选择的是guid

NHibernate利用Mindscape.NHibernateModelDesigner实现数据库与实体之间的转换及操作一、Mindscape.NhibernateModelDesigner安装二、根据数据库表结构生成实体并通过实体进行操作三、根据实体生成数据库表结构并通过实体进行操作四、[NHibernate操作文档及demo]

&nbsp&nbsp那么此时,你实体类中的主键字段是guid类型的,如果你通过guid.newguid()给你主键字段赋值会报出如下错误:

&nbsp&nbsp那么这种情况应该处理呢?毕竟大多数的主键都是guid类型的啊,此时需要修改你模型主键的生成规则:

NHibernate利用Mindscape.NHibernateModelDesigner实现数据库与实体之间的转换及操作一、Mindscape.NhibernateModelDesigner安装二、根据数据库表结构生成实体并通过实体进行操作三、根据实体生成数据库表结构并通过实体进行操作四、[NHibernate操作文档及demo]

在这里修改为guid类型的就可以了

NHibernate利用Mindscape.NHibernateModelDesigner实现数据库与实体之间的转换及操作一、Mindscape.NhibernateModelDesigner安装二、根据数据库表结构生成实体并通过实体进行操作三、根据实体生成数据库表结构并通过实体进行操作四、[NHibernate操作文档及demo]

&nbsp&nbsp此时通过实体操作数据是不需要填充主键字段的,你填充了也更新不进去。

NHibernate利用Mindscape.NHibernateModelDesigner实现数据库与实体之间的转换及操作一、Mindscape.NhibernateModelDesigner安装二、根据数据库表结构生成实体并通过实体进行操作三、根据实体生成数据库表结构并通过实体进行操作四、[NHibernate操作文档及demo]

&nbsp&nbsp本文中有什么不对的地方欢迎支出,谢谢