您的位置:首页 > 其它

Subsonic设置--新手上路

2008-04-25 13:50 316 查看
前言

在刚开始使用中就碰到问题:按照官方的方法配置,总是不能编译时自动生成数据访问层代码(其中一种,也可使用命令行自己生成,下面介绍)。本文只要介绍了这两种配置subsonic的方法。

1.配置方法

自动在临时文件夹生成的官方方法如下:

(1)修改web.config

在web.config里configuration节下面加入一下内容:

1<configSections>

2 <section name="SubSonicService" type="SubSonic.SubSonicSection, SubSonic" requirePermission="false"/>

3 </configSections>

4 <appSettings/>

5 <connectionStrings>

6 <add name="football" connectionString="Data Source=ERICK;Initial Catalog=polan2;Persist Security Info=True;User ID=sa;Password=sa" providerName="System.Data.SqlClient"/>

7 </connectionStrings>

8 <SubSonicService defaultProvider="football">

9 <providers>

10 <clear/>

11 <add name="football" type="SubSonic.SqlDataProvider, SubSonic" connectionStringName="football" generatedNamespace="football"/>

12 </providers>

13 </SubSonicService>

然后在system.web节内加入buildProviders配置节:

1<compilation debug="true" defaultLanguage="C#">

2 <!--########################## SubSonic Build Provider ###############################-->

3 <!--This will NOT WORK in Medium Trust-->

4 <buildProviders>

5 <add extension=".abp" type="SubSonic.BuildProvider, SubSonic"/>

6 </buildProviders>

7 <assemblies>

8 <add assembly="System.Data.OracleClient, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>

9 </assemblies>

web.config的设置结束。

(2)添加对subsonic.dll文件的引用

右键项目--添加引用--浏览

(3)在app_code文件下加入subsonic.abp文件

这里subsonic.abp是根据buildProviders配置节里面的extension=".abp"而来, .abp代表application build provider,目的是为了在编译时自动生成数据访问层,这些代码放在了框架的临时文件夹里面。

(4)编译之

我用的vs2008的webapplication,在上述三步后,发现vs2008依然不能找到我自己创建的命名空间以及相应的类,而且从编译时间上也能断定项目并没有按正常情况自动创建数据访问层的类代码。非常费解,今天又用vs2005 和2008分别对subsonic在website和webapplication下的配置进行了测试,发现上述方法只能在vs2005下的website中正常使用,对于其他三个项目,则只能使用另一种方法,IDE的外部工具:

(1)添加visual studio外部工具

打开vs2005或者2008,菜单-工具-外部工具,添加外部工具对话框如下:

productGrid.DataSource = football.Product.FetchAll();

2 productGrid.DataBind();
两行代码即可完成。Product是根据数据库自动生成的代码,真正项目中要想使用,必须要通过partial class的方法把这些类进行相应的扩展,留在以后再说。

3.结束语

本仅仅将我平时遇到的问题总结出来,主要是两种配置方法,希望对你们有帮助。关于subsonic详细信息请到官方网站。http://subsonicproject.com/

也欢迎给我留言或者发邮件讨论。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: