SubSonic框架使用图解
简介:SubSonic框架是一个优秀的、开源的ORM映射框架,同时提供符合自身需要的代码生成器。
官方下载地址:http://subsonicproject.com/Download
明白了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;


SubSonic框架使用图解的更多相关文章
- Orm图解教程
entity framework框架生成摘要文档为空(没有元数据文档可用)的bug解决方案 西安.王磊 2012-10-25 10:47 阅读:1234 评论:2 ORM for Net主流框架汇 ...
- 大数据入门第四天——基础部分之轻量级RPC框架的开发
一.概述 .掌握RPC原理 .掌握nio操作 .掌握netty简单的api .掌握自定义RPC框架 主要内容 1.RPC是什么 RPC(Remote Procedure Call)—远程过程调用,它是 ...
- Spring框架ioc概括
什么是Spring且能做什么 Spring是一个开源框架,它由Rod Johnson创建.它是为了解决企业应用开发的复杂性而创建的. Spring使用基本的JavaBean来完成以前只可能由EJB完成 ...
- 【ASP.NET程序员福利】打造一款人见人爱的ORM(一)
“很多人都不太认可以第三方ORM,因为考虑的点不够全面,没有大用户群体的ORM有保证,这点是不可否认确是事实.但是往往用户群体大的ORM又有不足之处,今天我们就来聊聊关于ORM的话题,打造 ...
- [知识库分享系列] 二、.NET(ASP.NET)
最近时间又有了新的想法,当我用新的眼光在整理一些很老的知识库时,发现很多东西都已经过时,或者是很基础很零碎的知识点.如果分享出去大家不看倒好,更担心的是会误人子弟,但为了保证此系列的完整,还是选择分享 ...
- day 81 Vue学习一之vue初识
Vue学习一之vue初识 本节目录 一 Vue初识 二 ES6的基本语法 三 Vue的基本用法 四 xxx 五 xxx 六 xxx 七 xxx 八 xxx 一 vue初识 vue称为渐进式js ...
- 再谈Java数据结构—分析底层实现与应用注意事项
在回顾js数据结构,写<再谈js对象数据结构底层实现原理-object array map set>系列的时候,在来整理下java的数据结构. java把内存分两种:一种是栈内存,另一种是 ...
- day 80 Vue学习一之vue初识
Vue学习一之vue初识 本节目录 一 Vue初识 二 ES6的基本语法 三 Vue的基本用法 四 xxx 五 xxx 六 xxx 七 xxx 八 xxx 一 vue初识 vue称为渐进式js框架 ...
- 《C#图解教程》读书笔记之一:C#和.NET框架
本篇已收录至<C#图解教程>读书笔记目录贴,点击访问该目录可获取更多内容. 一.在.NET之前的编程世界 C#语言是在微软公司的.NET框架上开发程序而设计的,首先作者给大家纠正了一下C# ...
随机推荐
- Working Experience - MoveWindow API 失败/无效
写在前面 当然过程不可能这么顺风顺水,毕竟对 Win32 API 不熟悉,并且国内搜索引擎和博客质量较低(不误导你就算好了),最后还是通过 Google -> StackOverflow 找到答 ...
- null, undefined 和布尔值
说明:此类博客来自以下链接,对原内容做了标注重点知识,此处仅供自己学习参考! 来源:https://wangdoc.com/javascript/basic/introduction.html 1.n ...
- JavaScript巩固篇(一)——数据类型与全局变量、局部变量、垃圾回收机制、存储方式、生命周期
知识要点 数据类型 存储方式 全局变量与局部变量 变量的生命周期 垃圾回收机制 知识概览 数据类型 JavaScript的数据类型分为:基本类型.引用类型 本质区别: 基本数据类型的变量实际值存储在栈 ...
- unity打包选项编辑器扩展
using UnityEngine; using UnityEditor; using UnityEditor.Callbacks; using System.IO; public class Pos ...
- AI资源
网易云课堂 http://study.163.com/topics/IBMOfflinePrograms?utm_source=baidu&utm_medium=cpc&utm_cam ...
- 关于通过angularJs将页面中的html table 导出生成excel
直接上代码: <button class="btn btn-link" ng-click="exportToExcel('#table1')"> & ...
- -cogs1247. [Nescafé29] 穿越七色虹
1247. [Nescafé29] 穿越七色虹 ★ 输入文件:rainbow.in 输出文件:rainbow.out 简单对比时间限制:5 s 内存限制:128 MB [背景] 在Ne ...
- lca最近公共祖先(st表/倍增)
大体思路 1.求出每个元素在树中的深度 2.用st表预处理的方法处理出f[i][j],f[i][j]表示元素i上方第2^j行对应的祖先是谁 3.将较深的点向上挪,直到两结点的深度相同 4.深度相同后, ...
- Bzoj 3380: [Usaco2004 Open]Cave Cows 1 洞穴里的牛之一
3380: [Usaco2004 Open]Cave Cows 1 洞穴里的牛之一 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 64 Solved ...
- 洛谷P1074 靶形数独(跳舞链)
传送门 坑着,等联赛之后再填(联赛挂了就不填了233) //minamoto #include<iostream> #include<cstdio> #include<c ...