GentleNet使用之详细图解[语法使用增强版]
目录
第一章 开发环境
第二章 简介
第三章 Gentle.Net-1.5.0 下载文件包介绍
第四章 使用步骤
第五章 源码下载
第一章、开发环境:
Vs 2010 + Sql 2005 + GentleNet 1.5.0 【Web网站程序 .Net Framework 3.5】
第二章、简介:Gentle.Net是一个开源的优秀O/R Mapping的对象持久化框架。具体的简介信息请点击这里。
此次使用的Gentle.Net版本为目前最新版本1.5.0,上一节已经介绍了一个优秀的orm映射框架NHibernate,那么它们的有什么相同和不同之处呢?其实Gentle.Net在配置和使用上要远比NHibernate简单很多。
Gentle.Net可以说是比较容易上手,语法使用也相对简单,但Gentle.Net的使用要依赖一个东西,那就是代码生成器,因为这对于它来说,是最重要的一步了,这个代码生成使用起来也很方便,本文也会给大家来介绍这个代码生成器的使用。Gentle.Net的优点是配置和使用都比较方便,所有能很多程度的减低开发成本。
下载地址:【①.Gentle.Net下载 ②.MyGeneration(代码生成器)下载 ③.本文Demo下载】
第三章、Gentle.Net-1.5.0 下载文件包介绍:
Build\
强名密钥文件,NDoc文档生成文件等
Configuration\
配置文件示例,App.config也修改为Web.config文件。
Contributions\
代码生成器的模板文件,装上代码生成器之后双击这些文件就可以使用。
Documentation\
Gentle.Net相关的说明文档。
Output\
Gentle.Net的生成dll文件。
Source\
Gentle.Net源代码。
第四章、使用步骤:
第一步:新建数据库和测试表、新建网站添加Gentle.Net引用。
首先创建数据库和表:

其次打开vs 2010或者别的版本新建一个网站,然后添加Gentle.Net的dll引用,也可以直接把dll放入新建网站的Bin目录下,引用的4个dll如图:

第二步:配置web.config文件。
配置web.config可根据下载文件包Gentle.NET 1.5.0\Configuration\App.config 配置,添加两处配置即可,配置1:

配置2:

其中配置1,配置2的log4net未使用可暂时不用配置,配置2中有链接数据库的配置:<DefaultProvider name="SQLServer" connectionString="..." />
需要配置一下,还有<Providers>节点中把所要使用的SQLServer配置打开,把其他的数据都注释掉,配置文件就搞定了。
第三步:代码生成器生成实体类。
咱们这里用的代码生成器是MyGeneration,首先下载此工具并安装,工具安装完成之后打开下载的Gentle.NET 1.5.0\Contributions\MyGeneration\BusinessEntity.csgen 文件,如图:

点击Default Settings设置数据库链接,

把字符串链接改为你自己的,然后点击Test Connection 如果弹出“Connection Successful!”就说明数据库链接成功,然后点击 Load 装载上,保存关掉窗口,点击运行如图:

绿色三角按钮,会出现模板配置界面,如图:

把所有不用的东西都删掉 => 设置属性“Base class”继承类设置为“Persistent” => 设置属性“Select a database:”选择你要链接的数据库 => 在下方“Select table(s)”选择你要生成的表 => 点击“OK”按钮 => Output模块就显示生成的实体类的模板代码,在web项目中添加实体类People.cs复制引用:
using Gentle.Framework;
using Gentle.Common;
using System.Collections;
复制namespace下面的所有类代码(namespace就不用复制了),生成你的web网站,可能会编译不通过,把爆红的代码删除(不影响功能)。
第四步:GentleNet代码使用。

// 1.添加
People p_insert = new People("Stone", "男", 18);
Gentle.Framework.Broker.Insert(p_insert); // 2.修改
People p_update = new People(1, "Stone", "男", 19);
Gentle.Framework.Broker.Update(p_update); // 3.复杂查询[支持t-sql]
string sql = "select * from people where id=1 and name like '%Stone%'";
Response.Write(Gentle.Framework.Broker.Execute(sql).Rows.Count); // 4.删除
People p_del = new People(1);
Gentle.Framework.Broker.Remove(p_del);

GentleNet支持t-sql语法查询。
扩展方法,因为删除的效率不怎好,这有一个扩展方法删除数据的,代码如下:

到此第一个Gentle.Net项目已经制作完成。
第五章、源码下载。
下载地址:【①.Gentle.Net下载 ②.MyGeneration(代码生成器)下载 ③.本文Demo下载】
GentleNet使用之详细图解[语法使用增强版]的更多相关文章
- MySQL安装详细图解整理
MySQL安装详细图解 2018-08-19 08:32:33 一.MYSQL的安装 1.打开下载的mysql安装文件mysql-5.0.27-win64.zip,双击解压缩,运行“setup.ex ...
- 详细图解jQuery对象,以及如何扩展jQuery插件
详细图解jQuery对象,以及如何扩展jQuery插件 早几年学习前端,大家都非常热衷于研究jQuery源码.我还记得当初从jQuery源码中学到一星半点应用技巧的时候常会有一种发自内心的惊叹,“原来 ...
- CentOS 6.4 服务器版安装教程(超级详细图解)
附:CentOS 6.4下载地址 32位:http://mirror.centos.org/centos/6.4/isos/i386/CentOS-6.4-i386-bin-DVD1to2.torre ...
- win8.1系统的安装方法详细图解教程
win8.1系统的安装方法详细图解教程 关于win8.1系统的安装其实很简单 但是有的童鞋还不回 所以今天就抽空做了个详细的图解教程, 安装win8.1系统最好用U盘安装,这样最方便简单 而且系统安装 ...
- TCP三次握手及四次挥手详细图解
TCP三次握手及四次挥手详细图解 Andrew Huangbluedrum@163.com 相对于SOCKET开发者,TCP创建过程和链接折除过程是由TCP/IP协议栈自动创建的.因此开发者并不 ...
- PowerDesigner 15.1 安装步骤详细图解及破解
准备工作: 下载 PowerDesigner 15.1 的安装文件和破解文件 PowerDesigner 15.1 下载地址:http://pan.baidu.com/share/link?share ...
- [转]超详细图解:自己架设NuGet服务器
本文转自:http://diaosbook.com/Post/2012/12/15/setup-private-nuget-server 超详细图解:自己架设NuGet服务器 汪宇杰 ...
- RHEL 6.3安装(超级详细图解教程)[转载]
附:RHEL6.3下载地址 32位:http://rhel.ieesee.net/uingei/rhel-server-6.3-i386-dvd.iso 64位:http://rhel.iee ...
- CentOS 6.4安装(超级详细图解教程)
链接地址:http://www.osyunwei.com/archives/5855.html CentOS 6.4安装(超级详细图解教程) 附:CentOS 6.4下载地址 32位:http://m ...
随机推荐
- httpd.conf------Apache主站点配置
Apache主站点配置 Apache的配置由httpd.conf文件配置,因此下面的配置指令都是在httpd.conf文件中修改. Apache主站点基本配置:ServerRoot “/mnt/sof ...
- 使用tomcat作为容器安装Jenkins
安装前准备环境:jdk,maven,tomcat jdk 参考centos安装jdk:https://www.cnblogs.com/pipiyan/p/10491876.html maven 已有安 ...
- c# new三种用法
前几天去家公司面试,有一道这样的题:写出c#中new关键字的三种用法,思前想后挖空心思也只想出了两种用法,回来查了下msdn,还真是有第三种用法:用于在泛型声明中约束可能用作类型参数的参数的类型,这是 ...
- 了解HTTP协议和TCP协议
HTTP(超文本传输协议),互联网上应用最为广泛的一种网络协议.所有的www文件都必须遵守这个标准.HTTP是一个客户端和服务端请求和应答的标准(TCP):客户通过浏览器发起一个到服务器上指定端口的H ...
- IOS 版本控制判断
// 版本判断#define SYSTEM_VERSION(ver) [[[UIDevice currentDevice] systemVersion] compare:ver] != NSOrder ...
- 黑马MyBatisday2 MyBatis Dao层实现 接口代理实现&传统实现 动态SQL和SQL抽取 自定义类型处理 分页插件PageHelper
package com.itheima.mapper; import com.github.pagehelper.Page; import com.github.pagehelper.PageHelp ...
- html表格合并单元格的运用实例
效果图: 实现代码: <!DOCTYPE html><html><head><meta charset="UTF-8"><ti ...
- 微信站 - 实现复制功能 clipboard
<script src="https://cdn.bootcss.com/clipboard.js/1.5.9/clipboard.js"></script> ...
- CC07:清除行列
题目 请编写一个算法,若N阶方阵中某个元素为0,则将其所在的行与列清零. 给定一个N阶方阵int[][](C++中为vector>)mat和矩阵的阶数n,请返回完成操作后的int[][]方阵(C ...
- Linux —— gcc编译文件
编译过程 预处理: 作用: 负责展开在源文件重定义的宏 操作: g++ -E 源文件.c -o 目标文件.i 汇编: 作用: 将目标文件生成汇编代码文件 操作: g++ -S 目标文件.i -o 汇编 ...