在PetaPoco中使用Where in

之前一直没在意,今天查了很多资料,才知道在petapoco中使用in关键字需要使用命名参数,否则是无效的(或者只查出第一个条件的记录),示例如下:

var  tags= new string[]{“c1”,”c2”};
var sql=PetaPoco.Sql.Builder.Select(“*”).From(“tblName”).Where(“colName in (@value)”,new {value= tags})
var result=db.Query<tblName>(sql);
时间: 2024-10-06 00:30:39

在PetaPoco中使用Where in的相关文章

ORM之PetaPoco错误--VS中NUGet程序包管理安装PetaPoco

一般在Vs中使用PetaPoco的时候都是使用NuGet程序包管理来安装PetaPoco的,如果你在安装PetaPoco前设置了ConnectionString,那么PetaPoco中的T4模板会自动为你的数据库创建对应的类.PS:这是PetaPoco的优点,但是我个人还是喜欢手动创建类,不知道如何能够屏蔽这项功能. 但是T4模板为你创建类的时候,它自动生成的代码的命名空间是你ConnectionString的Name标签.那么问题来了,如果你的Name标签中的字符串是包含空格的,那么生成的命名

PetaPoco的几个特性

在PetaPoco中,Brad并没有定义太多Attribute来修饰Models或Fields.这些为数不多的几个Attribute如下: ColumnAttribute ExplicitColumnsAttribute IgnoreAttribute PrimaryKeyAttribute ResultColumnAttribute TableNameAttribute ExplicitColumnsAttribute 和 ColumnAttribute 使用ExplicitColumnsAt

ORM PetaPoco 框架的 CRUD 操作

PetaPoco 的查询操作 public IEnumerable<T> GetAll(string sqlString, object[] obj) { try { IEnumerable<T> target; using (PetaPoco.Database db=new PetaPoco.Database (DbConfig.ConnectionString)) { target= db.Fetch<T>(sqlString, obj); } return tar

Petapoco Update在使用匿名对象修改时提示“给定关键字不在字典中”

>问题症状 在使用Petapoco的Update方法时通过匿名对象传入单个需要修改的字段时提示“给定关键字不在字典中”,调试中发现运行到 if (primaryKeyName != null) { --> pkpi = pd.Columns[primaryKeyName].PropertyInfo; } 时主键字段并未在pd.Columns中,于是报错. >解决办法 解决方法在https://github.com/toptensoftware/PetaPoco/issues/119,也就

PetaPoco在ASP.NET Core 2.2中使用注入方式访问数据库

.Net Core中一个特别重要的特性就是依赖注入功能,那么我们在使用PetaPoco的时候是否也可以使用依赖注入特性呢? 回答当然是可以的啦.使用方法(两种注入方式)如下 services.AddScoped<IDatabase>( x => { var connectionStrnig = Configuration["ConnectionStrings:MySQL:MvcMySQL"]; var configuration = DatabaseConfigura

C#轻型ORM框架PetaPoco试水

近端时间从推酷app上了解到C#轻微型的ORM框架--PetaPoco.从github Dapper 开源项目可以看到PetaPoco排第四 以下是网友根据官方介绍翻译,这里贴出来. PetaPoco是一款适用于.Net 和Mono的微小.快速.单文件的微型ORM. PetaPoco有以下特色: 微小,没有依赖项--单个的C#文件可以方便的添加到任何项目中. 工作于严格的没有装饰的Poco类,和几乎全部加了特性的Poco类 Insert/Delete/Update/Save and IsNew

【译】微型ORM:PetaPoco【不完整的翻译】

PetaPoco是一款适用于.Net 和Mono的微小.快速.单文件的微型ORM. PetaPoco有以下特色: 微小,没有依赖项……单个的C#文件可以方便的添加到任何项目中. 工作于严格的没有装饰的Poco类,和几乎全部加了特性的Poco类 Insert/Delete/Update/Save and IsNew 等帮助方法. 分页支持:自动得到总行数和数据 支持简单的事务 更好的支持参数替换,包括从对象属性中抓取命名的参数. 很好的性能,剔除了Linq,并通过Dynamic方法快速的为属性赋值

PetaPoco入门(一)

1. ORM概括 1.1. ORM简介 ORM 对象-关系映射(Object/Relation Mapping,简称ORM),是随着面向对象的软件开发方法发展而产生的.面向对象的开发方法是当今企业级应用开发环境中的主流开发方法,关系数据库是 企业级应用环境中永久存放数据的主流数据存储系统.对象和关系数据是业务实体的两种表现形式,业务实体在内存中表现为对象,在数据库中表现为关系数据.内 存中的对象之间存在关联和继承关系,而在数据库中,关系数据无法直接表达多对多关联和继承关系.因此,对象-关系映射(

PetaPoco join连接问题

petapoco是一个轻型的ORM,在这里不做详细介绍了.本文主要对如何对petapoco对象使用join连接,查询相关数据库. 1.首先创建一个简单的数据库,包含两个表.本文使用sql server 2008创建,如下图所示. SubTask表中有三个属性分别为Id.TaskId和Status,Task有两个属性分别为Id和Style,都是简单定义的,如下图所示.             2,创建一个控制台程序,加载petapoco.dll,然后分别创建两个petapoco对象,分别为subt