Fork me on GitHub

SubSonic框架使用图解

简介:SubSonic框架是一个优秀的、开源的ORM映射框架,同时提供符合自身需要的代码生成器。

 

官方下载地址:http://www.subsonic.org/pages/download.jsp 

明白了SubSonic是什么之后,下面一起来看SubSonic的使用吧。

 

开发版本:SubSonic版本为 2.2 + MsSql 2005 + Vs 2010(Web项目.Net Framework 3.5)

SubSonic开发步骤图解

步骤一、创建使用的数据库、数据表与新建Web网站项目。

T-Sql脚本如下:

create database SubSonicDB

go

use SubSonicDB

go

create table Boy

(

id int primary key identity,

[name] varchar(250),

age int

)

go

使用SubSonicDB为测试数据库,Boy表为测试表。

创建完数据库之后,打开Vs 2010 ==> 文件 ==> 新建网站 选择好存放的位置点击确定。

步骤二、添加SubSonic框架与配置文件。

在站点中添加SubSonic.dll的引用,或者把下载SubSonic.dll复制到站点的Bin文件夹下,此网站就添加了SubSonic支持,然后就是配置web.config(app.config),1.在web.config(app.config)的configSections节点上先加入SubSonic声明,配置如下:

<section name="SubSonicService" type="SubSonic.SubSonicSection, SubSonic" allowDefinition="MachineToApplication" restartOnExternalChanges="true" requirePermission="false"/>

2.在connectionStrings节点下配置普通的数据库访问字符串,我的配置如下:

<add name="SubSonicConn" connectionString="Data Source=192.168.1.150; Database=SubSonicDB; Integrated Security=true;User ID=sa;Password=sa;"/>

name名称不是固定的可随意起名,但接下来的配置会使用这个name名称,写法也会以前的一致。3.在configuration节点下配置SubSonic配置如下:

<SubSonicService defaultProvider="SubSonicConn" enableTrace="false" templateDirectory="">
<providers>
<clear/>
<add name="SubSonicConn" type="SubSonic.SqlDataProvider, SubSonic"
connectionStringName="SubSonicConn" generatedNamespace="SubSonicConn" removeUnderscores="false" />
</providers>
</SubSonicService>

这样,SubSonic的配置就完成了。

步骤三、配置SubSonic代码生成器,生成相关类。

点击vs 2010 工具栏中的工具选项 ==> 选择 外部工具 ==> 添加 ==> 标题 可以随便起,我使用的名称为MySubSonicTools ==> 点击命令的选择按钮,选择下载SubSonic的SubCommander文件中的sonic.exe文件 ==> 参数:generate /out Generated,初始目录为:$(ProjectDir),并勾选“使用命令窗口”和“提示输入参数”两个选项,点确定。

如图:

 

然会工具就会用 MySubSonicTools选项,

点击MySubSonicTools按钮,然会出现弹窗点击确定,刷新网站,就会出现生成的文件夹Generated,如图:

其中Boyxxx相关为Boy表的使用类,AllStructs.cs为主要的控制器文件,StoredProcedures.cs为存储过程相关的类。如果你的操作没有生成这些相关的类,多半是数据库链接字符串配置的问题,检查之后重新生成即可。

步骤四、SubSonic语法使用。

完成以上的三步之后,SubSonic配置就已经完成了,SubSonic使用语法如下:

使用之前要先引用:using Northwind;using SubSonic;

 

View Code
// 1.添加
Boy by = new Boy();
by.Name = "Stone";
by.Age = 1010;
by.Sex = "";
by.Save();

// 2.修改
int resultInt = new Update(Boy.Schema)
.Set(Boy.Columns.Sex).EqualTo("你妹") // 设置字段Sex 值为“你猜”
.Where(Boy.Columns.Id).IsEqualTo("13")
.And(Boy.Columns.Name).IsEqualTo("Stone")
.Execute();

// 3.删除
DB.Delete().From(Boy.Schema).
Where(Boy.Columns.Id).IsEqualTo("11").Execute();

// 4.查询
GridView1.DataSource = DB.Select().From(Boy.Schema).ExecuteDataSet().Tables[0];
// 条件查询 DB.Select().From(Boy.Schema).Where(Boy.Columns.Id).IsEqualTo("11").ExecuteDataSet().Tables[0];
GridView1.DataBind();

 

下载:本文Demo与是使用文档

 

 

 

Orm框架相关文章链接:

 

1.NHibernate使用之详细图解

 

2.iBatis for net 框架使用

 

3.iBatis for Net 代码生成器(CodeHelper)附下载地址

 

4.NBear简介与使用图解 

 

5.SubSonic框架使用图解

 

6.GentleNet使用之详细图解

 

posted @ 2011-09-22 15:27  Java中文社群  阅读(8880)  评论(3编辑  收藏