Subsonic 介绍

摘要:
创建一个可靠、快速的数据访问层需要一些规划。最低要求是向web添加以下配置。config(app.config)文件:一个或多个数据库连接字符串、一个SubSonic配置节和一个适当的数据库。连接到SubSonic非常简单,无需关心这些表或配置表与对象之间的映射关系。配置>

原文:Introduction to SubSonic

介绍了SubSonic,一个数据层构建器

导言

一 个易维护的应用程序,不同的类之间有不同的分工,通常分为界面层、业务层和数据访问层。虽然这一技术有利于更好地组织应用,一些开发人员不愿这么做。创建 一个可靠的和快速的数据访问层需要一些规划,一旦你创建了一个,他们看起来都是相似的。SubSonic帮助你基于数据库自动创建数据库访问层。

SubSonic是什么?

SubSonic是一个数据访问构建器。他还是一个auto-magic 的对象关系映射(ORM)工具,帮助你快速建立一个网站。
像吹嘘的那样,SubSonic能做什么工作,怎么能帮助你更快的建立应用程序?SubSonic通过读取你的数据库的结构,并为你构建快速,灵活的数据 访问层类。他只需要很少的配置,为你提供了不同的方法查询和保存数据,并提供方法给你定制以适应你的开发风格。SubSonic受到Rub on Rails的ActiveRecord的启发,不过SubSonic是一个纯粹的.NET组件。

SubSonic配置

和其它的ORM比较,SubSonic需要的配置很少,最小要求是将下列配置添加到web.config(app.config)文件:

  • 一个或者多个数据库连接串
  • 一个SubSonic配置节
  • 连接适当的数据库连接到SubSonic
就是这么简单-没有必要关心要那些表或配置表和对象的映射关系。在实践中,配置看起来如下:
<configuration>  
<!-- 1 - Connection String(s) -->
<connectionStrings>
<add name="Northwind"
connectionString="Data Source=.\sqlexpress;Initial
Catalog=Northwind;Integrated Security=True"/>
</connectionStrings>
<configSections>
<!-- 2 - SubSonic section handler -->
<section name="SubSonicService"
type="SubSonic.SubSonicSection, SubSonic"/>
</configSections>
<!-- 3 - Point SubSonic at the appropriate data source(s) -->
<SubSonicService defaultProvider="Northwind">
<providers>
<add name="Northwind"
type="SubSonic.SqlDataProvider, SubSonic"
connectionStringName="Northwind"
generatedNamespace="Northwind"/>
</providers>
</SubSonicService>
</configuration>
获取数据

一旦你用SubSonic创建了数据访问层(DAL),无论是使用代码生成器还是BuilderProvider,你随时可以查询你的数据库,目前SubSonic支持下列数据库
  • 微软SQL SERVER 2000或2005,包括Express版本
  • Oracle
  • MySQL
  • SQLite
SubSonic为你的数据库里的每个表生成三个类:
  • 表名奇数形式的类;例如有一个表Products,类名就是Product,这是一个强类型的类代表数据库表中的一行数据,表中的每一列对应类中的强类型的属性名,允许null的字段定义为nullable
  • 集合类:例如一个表Products,你将得到ProductCollection 类,这个类提供了好多方法处理数据库的数据
  • 一 个控制器(如ProductController):这提供了基本功能(创建,检索,更新和删除)。 而Product和ProductCollection 能装载自己,是ProductController是专为这些任务而设计的。此外,你可以把控制器作为数据源,为您的网页使用 ObjectDataSource控件。

它同时还具有牛排刀...

用SubSonic,你可能忽视了名字空间SubSonic.Sugar ,但如果你这样做,你错过了一些有用的特性。SubSonic.Sugar 没有迷人的功能,而是它提供的"杂项"的功能包括特性为:

  • 文件操作,如在一个请求打开和阅读文件。
  • 日期操作,如确定两个日期之间有多少工作日。
  • 字符串操作,例如转换,以适当的情况下,或剥HTML格式。
  • 数字操作,如确定如果一个数字是不是整数。
  • Web操作,如打开和阅读一个网页,或执行DNS查找。
  • 验证操作,其中包括通用签证,万事达卡和其他常见的信用卡验证。


扩展SubSonic

没有应用能够提供满足所有需求的解决方案,因此,使用SubSonic所生成的类是不够的。您可能要像生成的类中添加方法,或者你可能要改变生成的类。 SubSonic满足这两方面的需要。

所有的SubSonic生成的类都是局部类。这意味着你可以增加功能到另一个文件,而类的名字时一样的。 如果你不喜欢SubSonic所生成的类,你可以重写模板,模板是asp.net页面。

总结

你 知道你有一个数据库,你需要连接到一个应用。你知不知道在页面中直接发送SQL的请求是一个坏的架构。 你知道你应该为你的应用写一数据层管理CRUD。 你真的想要得到这一切,现在做的,那你可以回家享受天伦之乐。 帮您解决所有这些在优点于一体,而不牺牲性能,可维护性和灵活性。 现在就去下载它并给它一个尝试。 你的应用会谢谢你的。

免责声明:文章转载自《Subsonic 介绍》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Word中高效输入公式:内嵌公式和Mathtypesql语句的join用法下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

5、用python写一个自己的网页

1、新建一个文件夹 ,在里面新建一个文件cgi–bin的文件 2、插入代码; print ("Content-type:text/html") print () print ('<html>') print ('<head>') print ('<meta charset="gb2312">') print ('<...

Apache Spark2.0正式发布

Apache Spark2.0正式发布7月26日起Databricks开始提供Apache Spark 2.0的下载,这个版本是基于社区在过去两年的经验总结而成,不但加入了用户喜爱的功能,也修复了之前的痛点。 本文总结了Spark 2.0的三大主题:更简单、更快速、更智能,另有Spark 2.0内容的文章汇总介绍了更多细节。 两个月前,Databricks...

SQL Server 数据库操作系统支持整理

一、概述 本文旨在已经官方文档整理出 SQL Server 数据库支持的操作系统,并给出建议,从而帮助用户对 SQL Server 数据库进行操作系统选择。 二、SQL Server数据库的操作系统兼容列表 操作系统兼容信息,可通过官方文档进行查阅,官方文档地址为:https://docs.microsoft.com/zh-cn/sql/sql-serve...

[mysql] mysqldump 导出数据库表

1.mysqldump的几种常用方法: (1)导出整个数据库(包括数据库中的数据) mysqldump -u username -p dbname > dbname.sql (2)导出数据库结构(不含数据) mysqldump -u username -p -d dbname > dbname.sql (3)导出数据库中的某张数据表(包含...

fancyBox简单入门

1. 下载 fancyBox,解压后根据需要将文件复制到网页文件夹中(建议不要更改目录结构),并在网页源码中引入相应的 css 样式和 js 文件(如果更改了目录结构,引入的时候请调整相应代码,对应它们所在的路径)。注意:别忘了还要先加载 jQuery 库! <!-- 加载 jQuery 库(必须) --> <script type="t...

埋点

一直有听说过埋点测试,但只有个模糊的概念,现在从埋点测试的定义、埋点测试的目的、埋点测试的方法进行整理,系统学习一下埋点测试 1.埋点测试的定义 定义:     所谓埋点就是在应用中特定的流程收集一些信息,用来跟踪应用使用的状况,后续用来进一步优化产品或是提供运营的数据支撑,包括访问(Visits),访客(Visitor),停留时间(Time On Sit...