惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
DataBreaches.Net
MongoDB | Blog
MongoDB | Blog
GbyAI
GbyAI
L
LangChain Blog
B
Blog
博客园 - 三生石上(FineUI控件)
Martin Fowler
Martin Fowler
博客园 - 【当耐特】
Recent Announcements
Recent Announcements
P
Proofpoint News Feed
U
Unit 42
Last Week in AI
Last Week in AI
WordPress大学
WordPress大学
有赞技术团队
有赞技术团队
雷峰网
雷峰网
Microsoft Security Blog
Microsoft Security Blog
T
The Blog of Author Tim Ferriss
爱范儿
爱范儿
小众软件
小众软件
I
InfoQ
G
Google Developers Blog
大猫的无限游戏
大猫的无限游戏
人人都是产品经理
人人都是产品经理
C
Check Point Blog

博客园 - 雨人(ralpher)

volatile VS synchronized 记录一个小问题:游标中声明排序的写法问题 Great feature for Sql 2005--Row_number()分页 Recommend a site. 推荐一文:程序员的灯下黑:坚持和良好心态近乎道 EnglishTalk----Too Much Test Automation? 我这几年-----对于初学者的几点建议 面向对象设计原则(转) 系分考试论文实例12篇 一道禅语 好久没来了 First trip to BeiJing 飘到北京了 体验Castle中从配置文件注册组件以及传递参数的一个小例子 IOC模式的学习笔记 IBatisNet之运行时多数据库切换方案 读写xml配置文件 装箱 与 虚方法分发 IBatisNet初步体验
在IBatisNet中使用存储过程
雨人(ralpher) · 2005-12-22 · via 博客园 - 雨人(ralpher)
 

其实在IBatisNet中使用存储过程应该很简单了,应为IBatisNet本来就是基于Sql Mapping的。想着Npetshop中应该有例子看一下就行了,可是查了查map文件,发现没有,只要自己动手搞搞了。

在建立的测试数据库中建立一个简单的存储过程delUser @userId

*******************************************************

create proc delUser

       @UserId varchar(10)

as

begin

       delete from users where userId = @UserId

end

*******************************************************

接下来就是修改相应的Map文件了

修改前

….

<delete id="Delete" parameterClass="string" resultClass="int">

        delete from Users

        where UserId = #value#

    </delete>

….

修改后

……

  <procedure id="Delete"resultClass="int" parameterMap="proc_delUser_map">

        delUser

    </procedure>   

   

    <parameterMaps>

        <parameterMap id="proc_delUser_map" class="User">

            <parameter property="UserId" />

            </parameterMap>

    </parameterMaps>

…….

注意:在proceduere 中必须设置parameterMap属性,就是存储不带参数也需要设置,关于存储过程带有Out类型的参数,想着设置应该和上述一样,就没有做测试。

看起来在IBatisNet中使用存储过程还是比较容易的。越来越喜欢IBatisNet了,觉得比Nhibernate灵活,并且比Nhibernate的配置简单好学。当然IbtaisHibernate侧重点不同,算是各有千秋吧,都是不错的数据层框架。