subsonic配置与使用.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
subsonic配置与使用

ExtAspNet应用技巧(十一) - Subsonic配置与使用 前言 曾经尝试过很多DotNet下的ORM工具(只是DotNet2.0下的),有IBatis.Net, NHibernate, MyGeneration doodads, Microsoft EntLib, SubSonic等,觉得最简单的要数doodads,最好用的当属SubSonic。 因此在AppBox项目中,我毫不犹疑的选择SubSonic作为ORM工具。为了兼容dotnet2.0的程序,我们不会使用最新的SubSonic3.0版本,而是使用SubSonic2.2版本。 因为2.2版本已经有两年左右的稳定时间,所以应该不会出现大的BUG并且很容易在网上找到问题的解决办法。 约定优先于配置 这是一条由 Ruby On Rails 发扬广大的编程规则,SubSonic也非常重视这条规则,并在创建数据库表时有一些有用的约定: 1. 每个表都应该包含如下四个列(不是必需的),这样在使用SubSonic的创建和更新函数时可以方便的修改这些字段: CreatedOn (datetime) CreatedBy (nvarchar(50)) ModifiedOn (datetime) ModifiedBy (nvarchar(50)) 2. 如果你想使用逻辑删除,可以增加列:Deleted (bit) 这样当你调用数据库表映射类的静态方法 Delete 时,SubSonic会首先判断此表是否存在Deleted字段,如果存在则设为true。否则,则调用 Destory 函数,即是永久删除。 3. 对表名和列名的约定。 表名为单数形式 列名不要包含保留字(比如system,string等) 列名不要和表名相同 那么如何在A2.0 WebApplication项目中使用SubSonic,我想大概有如下几个步骤: 创建数据库和表 配置Web.config 通过sonic.exe连接数据库,生成所有的映射类 使用映射类对数据库进行CRUD 创建数据库和表 首先我们再SqlServer2005中新建一个数据库AppBox,然后创建用户表:? 可以看到,我们遵守了SubSonic的约定增加了CreatedOn,CreatedBy,ModifiedOn,ModifiedBy。不过没有使用逻辑删除。 配置Web.config view source print? 01 configSections 02 ??section name=SubSonicService type=SubSonic.SubSonicSection, SubSonic/ 03 /configSections 04 connectionStrings 05 ??clear/ 06 ??add name=Default connectionString=Password=sa;Persist Security Info=True;User ID=sa;Initial Catalog=AppBox;Data Source=./ 07 /connectionStrings 08 SubSonicService defaultProvider=Default 09 ??providers 10 ????clear/ 11 ????add name=Default type=SubSonic.SqlDataProvider, SubSonic connectionStringName=Default generatedNamespace=AppBox/ 12 ??/providers 13 /SubSonicService 我们在connectionStrings 配置节中执行了数据库连接字符串(名称为Default),并在SubSonicService配置节中指定connectionStringName为Default,这就为SubSonic指定了数据库连接。 通过 generatedNamespace=AppBox 是为下一步做准备,让代码自动生成的映射类拥有 AppBox 的命名空间。 通过sonic.exe生成所有的映射类 把下面一行命令保存为批处理文件(比如generate.bat),双击运行即可生成所有的数据库映射类代码(以后表有改动,只需重新执行一次这个命令即可)。 .\library\subsonic\sonic\sonic.exe generate /config .\ /out .\Business\Subsonic

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档