前言

最近做一个小项目,用到IBatis.net ,因为是现学现做,所以多少有点吃力,之前遇到一个问题,就是将List<T>作为parameterClass,

网上各种找,无奈.net方面的甚少,自己新手,身边又无高手指教,本来都想转换思路了,无意中却成功了。。。真是惊喜!

相关部分必要代码

实体类文件:Map.cs与UserInfo.cs

 [Serializable]
public class Map
{
public string UserID { get; set; }
public string UserGroup { get; set; }
}
 [Serializable]
public class UserInfo
{
public string UserID { get; set; } public string CardWord { get; set; } public string UserName { get; set; } public string PassWord { get; set; } public string UserPicture { get; set; } public string UserMail { get; set; } public DateTime RegTime { get; set; } public string UserStatus { get; set; }
}

xml文件中的配置,此处只给出涉及到的必要代码,数据库中的表名userinfo

 <!--省略非必要代码-->
<resultMaps>
<resultMap id="SelectAllUser" class="UserInfo">
<result property="UserID" column="ID"/>
<result property="CardWord" column="Card_Word"/>
<result property="UserName" column="User_Name"/>
<result property="PassWord" column="Pass_Word"/>
<result property="UserPicture" column="User_Picture"/>
<result property="UserMail" column="User_Mail"/>
<result property="RegTime" column="Reg_Time"/>
<result property="UserStatus" column="User_Status"/>
</resultMap>
</resultMaps>
<!--省略非必要代码-->
<statements>
<!--获取好友信息-->
<select id="GetAllUserByID" resultMap="SelectAllUser" parameterClass="List">
select * from userinfo where ID in
<iterate conjunction="," open="(" close=")">
#[].UserID#
</iterate>
</select>
</statements>
<!--省略非必要代码-->
调用代码
 List<Map> hashTable = new List<Map>();
List<Userinfo> userList = null;
userList = mapper.QueryForList<UserInfo>("GetAllUserByID", hashTable).ToList();

到此,若查询成功且有记录,userList中存储的就是每一条返回的UserInfo信息,当然,本博客主要说明的是参数类为List<T>泛型,然后在

IBatis.net中如何进行遍历,所以具体注释就未一一给出,像我一样的新手,若有什么疑问,留言即可.

关于Ibatis.net ,将List<T> 作为参数的学习笔记的更多相关文章

  1. ibatis 学习笔记 3 - pfpfpfpfpf的专栏 - 博客频道 - CSDN.NET

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  2. ibatis学习笔记(完整)

    1.       Ibatis是开源软件组织Apache推出的一种轻量级的对象关系映射(ORM)框架,和Hibernate.Toplink等在java编程的对象持久化方面深受开发人员欢迎. 对象关系映 ...

  3. [原创]java WEB学习笔记109:Spring学习---spring对JDBC的支持:使用 JdbcTemplate 查询数据库,简化 JDBC 模板查询,在 JDBC 模板中使用具名参数两种实现

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  4. 机器学习&数据挖掘笔记_23(PGM练习七:CRF中参数的学习)

    前言: 本次实验主要任务是学习CRF模型的参数,实验例子和PGM练习3中的一样,用CRF模型来预测多张图片所组成的单词,我们知道在graph model的推理中,使用较多的是factor,而在grap ...

  5. MVC缓存OutPutCache学习笔记 (一) 参数配置

    OutPutCache 参数详解 Duration : 缓存时间,以秒为单位,这个除非你的Location=None,可以不添加此属性,其余时候都是必须的. Location : 缓存放置的位置; 该 ...

  6. Dynamic CRM 2013学习笔记(一)插件输入实体参数解析

      1. 问题描述 最近新建了一个post事件的插件,传入的参数处理如下: 1: if (context.InputParameters.Contains("Target") &a ...

  7. Dynamic CRM 2013学习笔记(二十六)报表设计:Reporting Service报表 动态参数、参数多选全选、动态列、动态显示行字体颜色

    上次介绍过CRM里开始报表的一些注意事项:Dynamic CRM 2013学习笔记(十五)报表入门.开发工具及注意事项,本文继续介绍报表里的一些动态效果:动态显示参数,参数是从数据库里查询出来的:参数 ...

  8. IBatis.Net学习笔记六--再谈查询

    在IBatis.Net学习笔记五--常用的查询方式 中我提到了一些IBatis.Net中的查询,特别是配置文件的写法. 后来通过大家的讨论,特别是Anders Cui 的提醒,又发现了其他的多表查询的 ...

  9. Noah的学习笔记之Python篇:函数“可变长参数”

    Noah的学习笔记之Python篇: 1.装饰器 2.函数“可变长参数” 3.命令行解析 注:本文全原创,作者:Noah Zhang  (http://www.cnblogs.com/noahzn/) ...

随机推荐

  1. 文件I/O(不带缓冲)之原子操作

    一.添写至一个文件 考虑一个进程,它要将数据添加到一个文件尾端.早期的UNIX系统并不支持open的O_APPEND选项,所以程序被编写成下列形式: ) < ) /* position to E ...

  2. php一些技术要点连接地址

    http基本认证: http://www.php.net/manual/zh/features.http-auth.php

  3. 不规则三角网(TIN)(转)

    来自:http://blog.csdn.net/kikitamoon/article/details/8217641 Ⅰ 数字高程模型(DEM) 地球表面高低起伏,呈现一种连续变化的曲面,这种曲面无法 ...

  4. iOS之常用的判NULL的方法

    判读NSString 判读NSNumber #define OBJ_IS_NIL(s) (s==nil || [s isKindOfClass:[NSNull class]]) #define Num ...

  5. 网络请求OkHttp的使用

     okHttp: 1.okHttp是squere公司出的,在Android4.0以后盛行 2.httpClient 在5.0中弃用,在6.0以Google的sdk中没有该api 3.httpUrlCo ...

  6. SQL Server用存储过程新建视图

    CREATE PROCEDURE [dbo].[p_GetV_view]ASBEGIN DECLARE @sqlstr1 varchar(255) DECLARE @sqlstr2 varchar(2 ...

  7. url解析

    window.onload=function(){ var url="http://www.qq.com/index.html?key1=1&key2=2&key3=3&qu ...

  8. Thinkphp twig

    参考链接:thinkphp的twig模板实现 使用composer安裝好Thinkphp 3.2.3 composer create-project topthink/thinkphp your-pr ...

  9. c# 委托与异步调用

    背景:在winform UI中,有时需要对控件进行比较频繁的刷新,如进度条.picturebox显示视频等.如果在主线程进行这些刷新操作,操作还未完成就将执行下一次刷新,程序将发生错误:如果只是创建另 ...

  10. 简单的ROT13码编码与解码

    ROT13码意思是将字母左移13位.如'A' ↔ 'N', 'B' ↔ 'O','V' ↔ 'I'. 下面实现ROT13码的解码. function rot13(str) { var arr = [] ...