今天解决了一个IBatis.Net的使用的问题,这个问题困扰了很久。在做一个管理系统,后台Server采用的是HTTP Server+DB来提供服务。 最初使用的是Perl+BerkeleyDB,演进到Servlet+Mysql,然后又演进到ASP.NET + SQL Server,从Servlet开始ORM使用的是Hibernate,到了ASP.NET后,Hibernate转变为了NHibernate。一次偶然的机会,接触到了别人的一个系统,也想把这个管理系统中的NHibernate替换为IBatis.Net,并且把请求统一放到一个Controller进行Dispatch,也可以在Controller中加入日志、权限、验证等机制。当然,对于Struts等框架都是采用类似的机制完成的。自己也是一种借鉴和学习。在测试使用IBatis.Net的时候遇到一个问题,NHibernate的时候,插入一个对象,就可以获得这个对象对应的记录的自动生成的PK。IBatis可以通过SelectKey来做,我确实也有在Java下的例子,可是在网上看到的一些资料指出的在IBatis.Net中的用法,但是不能成功。一直搞了很久。今天终于是解决了。自己给自己记录一下吧。
<statements>
<statement id="INSERT-ADMIN" resultClass="int">
insert into admin (lastlogin, flag, controlflag, username, password, description)
values (#LastLogin#, #Flag#, #ControlFlag#, #Username#, #Password#, #Description#)
SELECT SCOPE_IDENTITY() AS value
</statement >
这个是正确的写法,不需要用到selectKey,自己以前的错误在两个地方,一个是在statement中没有写resultClass,另外一个就是用 select @@IDENTITY as id(value),始终不行,这个我一直没有搞明白是什么原因。只是根据自己的需要,返回的应该是这个scope中的id,所有使用select scope_identity 就可以了。
分享到:
- 2008-05-01 18:08
- 浏览 971
- 评论(0)
- 论坛回复 / 浏览 (0 / 1907)
- 查看更多
相关推荐
关于Spring.net + iBatis.net + asp.net MVC 整合的文档,值!
IBatis.Net详细使用手册
ibatis .net ibatis .net ibatis .net
Ibatis.net学习例子以及使用教程书,简单易学
spring.net_ibatis.net_mysq的使用例子
ibatis.net winform搭建带数据库,博客,http://blog.csdn.net/binyulong/article/details/78739746
使用vs2013 和 Ibatis.net1.6.2以及asp.net mvc整合的增删改查demo
spring.net+ibatis.net+mvc配置demo.rar spring.net版本:1.3.2 ibatis.net版本:1.6.1 demo运行环境是VS2013 数据库表,我就没传了,测试的时候,建立表 CREATE TABLE [dbo].[Hair8_AD]( [ADId] [int] ...
iBATIS.NET SDK for .NET 2.0.chm
Ibatis .net 分页 查询, 可以参考下, Ibatis .net 分页 查询
参照nhibernate模板文件和ibatis.net教程相关示例制作的codesmith模板文件,C#环境
Ibatis.net学习和实例Ibatis.net学习和实例Ibatis.net学习和实例Ibatis.net学习和实例
ibatis.net 可运行的例子 采用dao.config的方式
ibatis.net官方组件 IBatis.DataMapper.1.6.2 IBatis.DataAccess.1.9.2
这是Ibatis.net 1.x 官方最后维护的版本,从官方的svn下载下来的 包括.net framework 2.0/3.5/4.0 三个版本的project 与网络上流传的版本不同的是,Castle组件更新为了2.5.1版本
ibatis.net的asp.net MVC的实例,集成了Microsoft.unity的IOC
IBatis.net 这么好的东西,现在基本停止开发了,原来版本不能运行在framework 4.0以上,这个版本可以运行在4.0,理论上可以运行在所有4.0以上的版本。
博客地址:http://www.cnblogs.com/jys509/p/4543289.html
这个是IBatis.DataAccess.1.9.2.bin 和IBatis.DataMapper.1.6.2.bin,国内去官网都没法下载,在这儿给分享了