ibatisnet连接sql server 2008连接方法

先下载相关的ibatis
1.建立解决方案,该方案包括4个项目,分别是类库DAO、Model、Service以及Web应用程序WebApp。
2.创建testDB,创建表:
USE [testDB]
GO


/****** Object: Table [dbo].[testTable1] Script Date: 02/21/2013 17:30:46 ******/
SET ANSI_NULLS ON
GO


SET QUOTED_IDENTIFIER ON
GO


CREATE TABLE [dbo].[testTable1](
[Col1] [int] NULL,
[Col2] [int] NULL,
[Col3] [int] NULL
) ON [PRIMARY]


GO
3.DAO操作:
引用相关的dll:包括IBatisNet.Common、IBatisNet.Common.Logging.Log4Net、IBatisNet.DataAccess、IBatisNet.DataMapper、Model
新建test.xml,内容如下:

<?xml version="1.0" encoding="utf-8" ?>
<sqlMap namespace="T" xmlns="http://ibatis.apache.org/mapping" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<alias>
<typeAlias alias="T.test" type="Model.test, Model" />
</alias>
<resultMaps>
<resultMap id="TestResult" class="T.test"></resultMap>
<result property="Col1" column="Col1"></result>
<result property="Col2" column="Col2"></result>
<result property="Col3" column="Col3"></result>
</resultMaps>
<statements>
<!--<select id="Select" resultMap="TestResult">
select * from testTable1
</select>-->
<select id="SelectCount" resultClass="int" >

select count(*) from testTable1
</select>
</statements>
</sqlMap>
alias节点中type=类,程序集
把下载的provider.config文件复製至DAO项目下,添加sqlserver2008的节点,添加内容如下:
<provider
name="sqlServer2008"
enabled="true"
default="true"
description="Microsoft SQL Server, provider V4.0.0.0 in framework .NET V4.0"
assemblyName="System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
connectionClass="System.Data.SqlClient.SqlConnection"
commandClass="System.Data.SqlClient.SqlCommand"
parameterClass="System.Data.SqlClient.SqlParameter"
parameterDbTypeClass="System.Data.SqlDbType"
parameterDbTypeProperty="SqlDbType"
dataAdapterClass="System.Data.SqlClient.SqlDataAdapter"
commandBuilderClass=" System.Data.SqlClient.SqlCommandBuilder"
usePositionalParameters = "false"
useParameterPrefixInSql = "true"
useParameterPrefixInParameter = "true"
parameterPrefix="@"
allowMARS="true"
/>
把下载的SqlMap.config文件复製至DAO项目下:
<?xml version="1.0" encoding="utf-8"?>
<sqlMapConfig
xmlns="http://ibatis.apache.org/dataMapper"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<!--常量属性,通过单独文件properties.config加载-->
<!--<properties resource="../../../Files/properties.config"/>-->


<settings>
<setting useStatementNamespaces="true"/>
</settings>
<!--数据驱动提供类配置文件的路径和文件名-->
<providers embedded="providers.config,DAO"/>


<!-- 数据库连接信息 -->
<!--<database>
<provider name="MySql"/>
<dataSource name="DataSource" connectionString="${connectionString}"/>
</database>-->
<database>
<provider name="sqlServer2008"></provider>
<dataSource name="DataSource" connectionString="${connectionString}"/>
</database>
<sqlMaps>
<sqlMap embedded="test.xml,DAO" />
</sqlMaps>


</sqlMapConfig>
注:provider中name值与刚才provider.confg中添加的provider节点的name属性值一样
provider.config、SqlMap.config、test.xml三个文件属性中生成操作改成嵌入的资源
4.Model操作:
和之前的ado.net写model差不多。
5.service操作:
由於逻辑简单,直接调用DAO的结果即可。
6.WebApp
测试demo,因此直接将结果显示在form中。

原文地址:https://www.cnblogs.com/marslin/p/3086615.html