申明:本作品采用知识共享署名-非商业性使用-相同方式共享 2.5 中国大陆许可协议进行许可,我的博客欢迎复制共享,但在同时,希望保留我的署名权CHARSET,并且,不得用于商业用途。如您有任何疑问或者授权方面的协商,请联系我。
 
使用反射和配置来实现SQL->.NET类的映射
1 SELECT Field1,Field2,Field3 FROM table_name WHERE Field4=?

上述例子是由于OleDb不支持命名参数,以下均为OleDb作为例子。

配置如下:

 1 <Statement>
 2   <SQL><!CDATA[[SELECT Field1,Field2,Field3 FROM table_name WHERE Field4=?]]></SQL>
 3   <Parameters>
 4     <Parameter Name="@Field4" Type="System.String" />
 5   </Parameters>
 6   <Result ReturnList="False/True" Type="Query.Information.ClientInfo,Query.Information.ClientInfo">
 7     <Field Name="Field1" Mapping="Dummy" Type="System.Decimal" />
 8     <Field Name="Field2" Mapping="Name" Type="System.String" />
 9     <Field Name="Field3" Mapping="Salary" Type="System.Double" />
10   </Result>
11 </Statement>

类定义是:

1 public classClientInfo{
2   [Entity]public decimal Dummy{ get; set; }
3   [Entity]public string Name{get;set; }
4   [Entity]public double Salary{get;set; }
5 }

使用下面函数来获得类的示例:
1 object SQLHelper.Execute(XXXConnection connection, string profile, Dictionary<string, string> KV);

方法如下:

1 Dictionary<string,string> KV = new Dictionary<string,string>();
2 KV.Add("@Field4", "SID0001");
3 Query.Information.ClientInfo clientInfo
4   = SQLHelper.Execute(connection, "获得产品信息", KV) as Query.Information.ClientInfo;

或者:

1 Dictionary<string,string> KV = newDictionary<string,string>();
2 KV.Add("@Field4", "SID0001");
3 List<Query.Information.ClientInfo>clientInfo
4   = SQLHelper.Execute(connection, "获得产品信息", KV) as List<Query.Information.ClientInfo>;

转载于:https://www.cnblogs.com/charset/p/4561339.html

C# EasyORM相关推荐

  1. JetLinks学习笔记一

    目录 jetlinks简介 一.jetlinks基础 1.核心特性 2.技术栈 3.架构 4.设备接入流程 二.安装及启动步骤 1.前期准备 2.代码获取 3.后端代码导入idea启动 2.前端代码导 ...

  2. C#用easy-mvc开发的后台管理系统

    可在webForm上使用的mvc框架,无需导入.net mvc的大量引用包,同时支持web和json开发. 一.源码特点     本系统使用easy-mvc和easy-orm框架开发,目前只是1.0版 ...

  3. java 读取硬件设备发送数据_基于java的物联网设备控制系统源码分享,loT硬件智能化...

    基于Paas服务的物联网平台,用于快速开发.部署物联设备接入. 降低物联网企业研发.运维和运营成本,帮助企业将物联设备快速互联网化,提高物联网项目的落地能力. 系统截图 系统核心特性 1.可扩展性强 ...

  4. 快速搭建JetLinks物联网基础平台

    JetLinks 是一个物联网基础平台,用于快速建立物联网相关业务系统. 集成了各种常见的网络协议(HTTP,TCP,UDP,CoAP)等,并对其进行封装, 实现统一管理,监控,在线调试,在线启动,停 ...

  5. 快速搭建开源物联网基础平台

    JetLinks 是一个物联网基础平台,用于快速建立物联网相关业务系统. 集成了各种常见的网络协议(HTTP,TCP,UDP,CoAP)等,并对其进行封装, 实现统一管理,监控,在线调试,在线启动,停 ...

最新文章

  1. java字节对齐 32 64_【C语言】字节对齐问题(以32位系统为例)
  2. 一蹴而就的解释是什么_健身会让我们成为什么样的人?
  3. 视图插入数据_数据库DQL、DML、DDL、DCL 详解
  4. STM32启动文件代码解析
  5. Hadoop Balancer运行速度优化
  6. 【嵌入式Linux】嵌入式Linux应用开发基础知识之输入系统应用编程
  7. Android开发人员得让短信应用程序准备好迎接巧克力棒
  8. linux中iso源码解压_Linux系统下iso文件的制作和解压以及加载
  9. java 单例模式(饿汉模式和懒汉模式)
  10. Kali linux 2016.2(Rolling)中的Exploits模块详解
  11. 重点人员动态管控系统开发,公安情报研判分析平台建设
  12. 数据库--sql查询某一时间段数据
  13. 计算机课件制作背景图,制作一张带有背景图像的幻灯片,再选择一张数码
  14. 专访Blue Coat:移动恶意软件现状与趋势
  15. mysql 切分_MySQL切分查询用法分析
  16. 关于寻路算法的一些思考(8):长期和短期目标
  17. 健身健美减脂、脱水、充碳记录
  18. Android ViewFlipper 使用
  19. TensorFlow.js简介
  20. 旋转编码器(STM32)

热门文章

  1. 什么是 iPhone 和 Mac 上的“优化电池充电”功能?
  2. macOS Big Sur:快速入门的50个使用技巧
  3. leetcode397. Integer Replacement
  4. 考拉Android全局滑动返回及联动效果的实现
  5. linux命令大全之ss命令详解(获取socket统计信息)
  6. overflow与BFC解说
  7. UIKit 框架之UIScrollView
  8. oracle的启动与关闭原理-数据路的分阶段启动
  9. 如何借助OpenStack命令行工具管理虚拟机?
  10. c#中Hashtable用法简述