Send SqlParameter to Dapper

Question:

I‘ using Dapper in my project. I have a list of SqlParameters and I want to send it to Dapper. But Dapper needs an object (name, value). How can I convert a SqlParameter to an object. I know this doesn‘t work:

conn.Query<TModel>(sql, parameters.Select(p => new {p.ParameterName=p.Value}))

any suggestions?

Answer:

Stumbled across this looking for something else - but can offer some insight that may help others in the future.

You can use the Dapper.DynamicParameters object to add items that can be legally passed to Dapper Queries, i.e. (hand-coded)

var args = new DynamicParameters(new {});
parameters.ForEach(p => args.Add(p.ParameterName, p.Value));
conn.Query<TModel>(sql, args );

from url:http://stackoverflow.com/questions/22978754/send-sqlparameter-to-dapper
时间: 2024-08-28 12:53:50

Send SqlParameter to Dapper的相关文章

ASP.NET Core:使用Dapper和SwaggerUI来丰富你的系统框架

一.概述 1.用VS2017创建如下图的几个.NET Standard类库,默认版本为1.4,你可以通过项目属性进行修改,最高支持到1.6,大概五月份左右会更新至2.0,API会翻倍,很期待! 排名分先后,这里简要说下我对各个类库职责的一个理解. Light.Model:存放实际项目中你用到的所有实体集合,包括数据库表映射实体,请求实体,响应实体,视图显示实体以及一些公共实体类等,同时你还可以根据自己业务的模块功能进行更细致的划分. Light.IRepository:数据库仓储接口,定义你操作

EntityFramework、Dapper vs 草根框架性能大比拼,数据库访问哪家强?

扯淡 当前市面上 ORM 很多,有跑车型的,如 Dapper,有中规中矩型的,如 Mybatis.Net,也有重量型的,如 EntityFramework 和 NHibernate,还有一些出自草根之手的,如 Chloe.ORM.各式各样,层出不穷.试问,为何要重复造轮子?很简单,咱来自火星,目前地球上还没一款轮子适合咱这辆火星车~ 为加深对各个 ORM 框架的了解,同时也想看看咱自己的框架性能如何,也可以让对 Chloe 感兴趣的同学有所了解,今儿,做个性能比较测试.测试对象为大家较熟悉的 E

dapper-dot-net/Dapper NET40/SqlMapper.cs

/* License: http://www.apache.org/licenses/LICENSE-2.0 Home page: http://code.google.com/p/dapper-dot-net/ Note: to build on C# 3.0 + .NET 3.5, include the CSHARP30 compiler symbol (and yes, I know the difference between language and runtime versions

开源ORM之Dapper在项目中的尝试

关于轻量级开源ORM-Dapper的介绍网上有太多例子,自己无意再重复介绍了,本文只是记录下Dapper在目前项目中的应用或者尝试.先说下背景,来到新公司有段时间了,这期间接触了几个项目,发现有一个问题就是所有这些项目的数据访问层无一例外的都是用最原始的ado.net(SqlHelper类只是对ado.net进行粗糙地封装),而且每次进行CRUD操作时都要传递数据库连接字符串和SqlParamerter数组,还有一些其他的额外参数,而且返回来的结果还得自己再调用另外的方法去反射得到具体的实体对象

轻量级ORM框架——第一篇:Dapper快速学习

我们都知道ORM全称叫做Object Relationship Mapper,也就是可以用object来map我们的db,而且市面上的orm框架有很多,其中有一个框架 叫做dapper,而且被称为the king of ORM. 一:为什么选择Dapper 1. 性能优越: 其实在各大网站上,我们大概都会看到这样的一个对比效果图,在超过500次poco serialization的过程中所表现的性能,我们发现dapper是第二名, 当然第一名谁也无法超越,越底层的当然久越快,同时也就越麻烦.就好

Dapper full example

Skip to content Sign up Sign in This repository Explore Features Enterprise Blog Watch 390 Star 2,538 Fork 844 StackExchange/dapper-dot-net branch: master dapper-dot-net/Tests/Tests.cs @mgravellmgravell 5 days ago SO30435185; make it clearer if the c

Dapper快速学习

Dapper快速学习 我们都知道ORM全称叫做Object Relationship Mapper,也就是可以用object来map我们的db,而且市面上的orm框架有很多,其中有一个框架 叫做dapper,而且被称为the king of ORM. 一:为什么选择Dapper 1. 性能优越: 其实在各大网站上,我们大概都会看到这样的一个对比效果图,在超过500次poco serialization的过程中所表现的性能,我们发现dapper是第二名, 当然第一名谁也无法超越,越底层的当然久越快

Dapper入门使用,代替你的DbSQLhelper

Dapper介绍 Dapper是.Net下的一个轻量级ORM框架.在小型工具向的项目下,使用Dapper会使数据库操作层代码更加优雅. Dapper的使用 在项目中使用引用Dapper非常简单,你可以选择两种方式: 1.在NuGet引用 2.Github下载源代码,添加到项目当中去 Dapper 项目地址 https://github.com/StackExchange/Dapper 添加项目 Dapper  到你自己的项目当中去,这样可以直接调试Dapper的源代码 个人感觉添加源代码到项目当

大规模分布式系统的跟踪系统 Dapper设计给我们的启示

在2010年,google发表了一篇名为"Dapper, a Large-Scale Distributed Systems Tracing Infrastructure"的论文,在文中介绍了google生产环境中大规模分布式系统下的跟踪系统Dapper的设计和使用经验.而zipkin/pinpoint/hydra/watchman/鹰眼等系统都是基于这篇文章而实现的.重新再读这篇文章,简单整理如下. 为什么需要跟踪系统 故障快速定位 快速的故障定位非常重要,一个好的系统需要提供快速检