NHibernate可视化设计插件——Mindscape.NHibernateModelDesigner
我一直希望NHibernate能够支持像EF一样支持可视化操作,今天去网上搜了一下,发现有一个插件,类似EF的可视化功能。
下载地址:Mindscape.NHibernateModelDesigner_crack.vsix
下载后,运行Mindscape.NHibernateModelDesigner_crack.vsix,进行安装,安装完成之后,在新建项目的时候,就会发现多了如下模版:






用过EF的朋友应该很熟悉,这个界面就跟EF的可视化界面非常相似了。
打开服务器资源管理器,然后连接到Northwind数据库

拖放之后,将会自动生成如下类

我们来看下这个生成的类的源码
using System;
using System.Collections.Generic;
using NHibernate.Cfg;
using NHibernate.Validator.Constraints; namespace Shop.Domain
{
[System.CodeDom.Compiler.GeneratedCode("NHibernateModelGenerator", "1.0.0.0")]
public partial class Customer
{
[NotNull]
[Length(Max=)]
public virtual string CustomerId { get; set; }
[NotNull]
[Length(Max=)]
public virtual string CompanyName { get; set; }
[Length(Max=)]
public virtual string ContactName { get; set; }
[Length(Max=)]
public virtual string ContactTitle { get; set; }
[Length(Max=)]
public virtual string Address { get; set; }
[Length(Max=)]
public virtual string City { get; set; }
[Length(Max=)]
public virtual string Region { get; set; }
[Length(Max=)]
public virtual string PostalCode { get; set; }
[Length(Max=)]
public virtual string Country { get; set; }
[Length(Max=)]
public virtual string Phone { get; set; }
[Length(Max=)]
public virtual string Fax { get; set; } private IList<Order> _orders = new List<Order>(); public virtual IList<Order> Orders
{
get { return _orders; }
set { _orders = value; }
} static partial void CustomizeMappingDocument(System.Xml.Linq.XDocument mappingDocument); internal static System.Xml.Linq.XDocument MappingXml
{
get
{
var mappingDocument = System.Xml.Linq.XDocument.Parse(@"<?xml version='1.0' encoding='utf-8' ?>
<hibernate-mapping xmlns='urn:nhibernate-mapping-2.2'
assembly='" + typeof(Customer).Assembly.GetName().Name + @"'
namespace='Shop.Domain'
>
<class name='Customer'
table='`Customers`'
>
<id name='CustomerId'
column='`CustomerID`'
>
<generator class='identity'>
</generator>
</id>
<property name='CompanyName'
column='`CompanyName`'
/>
<property name='ContactName'
column='`ContactName`'
/>
<property name='ContactTitle'
column='`ContactTitle`'
/>
<property name='Address'
column='`Address`'
/>
<property name='City'
column='`City`'
/>
<property name='Region'
column='`Region`'
/>
<property name='PostalCode'
column='`PostalCode`'
/>
<property name='Country'
column='`Country`'
/>
<property name='Phone'
column='`Phone`'
/>
<property name='Fax'
column='`Fax`'
/>
<bag name='Orders'
inverse='false'
>
<key column='`CustomerID`' />
<one-to-many class='Order' />
</bag>
</class>
</hibernate-mapping>");
CustomizeMappingDocument(mappingDocument);
return mappingDocument;
}
}
}
}
这个类当中包含了生成的model类和xml映射文件




这里我只是简单的介绍存在这样一个插件,这个差件自动生成了我们需要的映射类和配置文件,以及数据库配置文件,以及NHibenate辅助类,有了这些东西,我们就可以很方便的进行开发了,只要Ctrl+C,Ctrl+V。具体的使用方法,大家可以去参考上一篇:Hibernate学习笔记—使用 NHibernate构建一个ASP.NET MVC应用程序
NHibernate可视化设计插件——Mindscape.NHibernateModelDesigner的更多相关文章
- NHibernate利用Mindscape.NHibernateModelDesigner实现数据库与实体之间的转换及操作
环境:   Visual Studio 2010 一.Mindscape.NhibernateModelDesigner安装   在打开 ...
- 【转】JVM可视化工具插件---Visual GC
Visual GC是一个Java 内存使用分析与GC收集的可视化工具插件 <插件下载> 一:整个区域分为三部分:spaces.graphs.histogram 1 spaces区域:代表虚 ...
- .Net开发笔记(十九) 创建一个可以可视化设计的对象
阅读本篇博客之前需要了解VS窗体设计器的工作原理,详细可参见本系列博客(十).(十一).(十二).必须需要知道的一条结论就是:处于窗体设计器(Form Designer)中的任何组件(包含控件,下同) ...
- eclipseMARS2.0使用可视化设计界面——配置window builder
1.查看eclipse版本 不同版本的eclipse对应不同的版本window builder,如果不知道版本的话可以通过,点击HELP——>about eclipse来查看自己eclipse的 ...
- 10 个免费的 jQuery 可视化编辑器插件
富文本编辑器,也就是所见即所得的 HTML 编辑器,是网站一个非常重要的组件,特别是对于一些内容发布网站来说.本文介绍 10 个基于 jQuery 的可视化文本编辑器. MarkitUp markIt ...
- SWT可视化设计
SWT可视化设计,可以使用Google的WindowBuilder. 在Google Code中,搜索WindowBuilder就可以看到路径. 在Eclipse中 Help--->Inst ...
- C# winform页面可视化设计打开失败,提示未能加载程序集或他的一个依赖项,dll错误
这种情况发生在最初项目是x86属性,改成x64后,一些原来dll,页面没有及时更新,导致页面找不到dll, 最简单的解决方式,把项目属性改成AnyCpu,重新编译下,就可以打开可视化设计窗口了.
- IDEA 安装配置可视化 MongDB 插件
IDEA 安装配置可视化 MongDB 插件 1.安装MongoDB插件 打开 IDEA ,file --> settings --> plugins,在右边搜索栏中输入Mongo,点击 ...
- 可视化设计,类Excel的快速开发平台
活字格Web应用生成器,是可视化设计,类Excel的快速开发平台,接下来给大家介绍如何体现这些特点. 一.可视化设计 网页系统的开发,包含UI设计+代码编写的工作,最终形成网页系统.这要求系统开发人员 ...
随机推荐
- video自动全屏播放
video自动全屏播放 关于Screen.lockOrientation() https://developer.mozilla.org/en-US/docs/Web/API/Screen/lockO ...
- jquery 之 Deferred 使用与实现
观察者模式是开发中经常使用的模式,这个模式由两个主要部分组成:主题和观察者.通过观察者模式,实现主题和观察者的解耦. 主题负责发布内容,而观察者则接收主题发布的内容.通常情况下,观察者都是多个,所以, ...
- HTML基础笔记-01
---恢复内容开始--- 学习网站:W3School 1.基础知识 目录: <1.我的文档—> 选择目录名—> 主页—> 样式(点击标题样式,选择你想要的每个标题,重复此步骤) ...
- Androd开发之广告栏设计
对于做Android开发的工程师对于这个效果的实现一定不陌生,本篇我将带领大家先简单实现这个效果,再为大家介绍一下其中的原理,方便新手学习,老手复习,内容简单易懂,没有基础一样学习,不扯没用的了,下面 ...
- js选择目录
找了好久,终于找到了! function browseFolder(path) {//打开本地目录(目录选择功能) try { var Message = "\u8bf7\u9009\u62 ...
- 如何利用Direct NFS克隆数据库
CloneDB是Oracle 11.2.0.3推出的一项新特性,它利用的了11g新引入的Direct NFS.它直接利用目标数据库的备份,无需将备份COPY到克隆环境下,使得一个备份可以克隆多个不同用 ...
- JavaScript面向对象程序设计:数组
或许你会奇怪,面向对象的程序设计为什么从数组开始讲起?这是因为……其间的种种关系吧……嘿嘿,这里先卖个关子,先来看看我们熟悉的数组在JavaScript里面是什么样子的. 1. 创建数组 在J ...
- Bootstrap Magic – 轻松创建自己的 Bootstrap 主题
Bootstrap Magic 是一款基于 Bootstrap 和 AngularJS 的主题创建工具.您可以轻松地创建您自己的 Twitter Bootstrap 主题,可以立即看到你的内容变化.您 ...
- [git]撤销的相关命令:reset、revert、checkout
基本概念 工作区 暂存区 本地版本仓库 远程版本仓库 如果不清晰上面的四个概念,请查看廖老师的git教程 这里我多说几句:最开始我使用git的时候,我并不明白我为什么写完代码要用git的一些列指令把我 ...
- 设计宝库:22套精美的 PhotoShop 素材免费下载
<设计宝库>系列给大家带来22套精美的 PSD 设计素材,你可以免费下载使用.设计师经常会去网上搜罗各种各样的素材,这些免费素材不仅能帮助他们节省大量的时间,而且能有很好的效果.非常感谢那 ...