在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);…
最近一直在使用Petapoco+Entity Framework Core结合开发一套系统. 使用EFCore进行Code First编码,使用PMC命令生成数据库表的信息. 使用Petapoco进行数据库的常规操作.并且结合PetaPoco.SqlKata的使用,减少了编写SQL语句的工作量,对提升开发效率有很大的帮助.Petapoco对数据库的支持非常的全,包括常规的一下数据库:SQL Server,SQL Server CE,MS Access,SQLite,MySQL,MariaDB,P…
一般在Vs中使用PetaPoco的时候都是使用NuGet程序包管理来安装PetaPoco的,如果你在安装PetaPoco前设置了ConnectionString,那么PetaPoco中的T4模板会自动为你的数据库创建对应的类.PS:这是PetaPoco的优点,但是我个人还是喜欢手动创建类,不知道如何能够屏蔽这项功能. 但是T4模板为你创建类的时候,它自动生成的代码的命名空间是你ConnectionString的Name标签.那么问题来了,如果你的Name标签中的字符串是包含空格的,那么生成的命名…
在PetaPoco中,Brad并没有定义太多Attribute来修饰Models或Fields.这些为数不多的几个Attribute如下: ColumnAttribute ExplicitColumnsAttribute IgnoreAttribute PrimaryKeyAttribute ResultColumnAttribute TableNameAttribute ExplicitColumnsAttribute 和 ColumnAttribute 使用ExplicitColumnsAt…
今天来给大家分享一个好用的轻型的.net框架的ORM——PetaPoco 本着快速上手的原则,我们通过和EF对比,让大家能快速使用PetaPoco PetaPoco大家可能没有听说过,但大家一定听说过或者用过EF吧,其实,PetaPoco和EF是一个性质的东西,只不过PetaPoco相对于EF而言较为轻量级的. 与EF一样,我们可以再NuGet中将其引用安装进来. 安装完毕之后,我们可以就可以在解决方案中看到多个文件夹. 注:ExModels这个文件夹是我自己加上的,不是自己生成的. 在EF中,…
1.EF中使用事务: using (TransactionScope tran = new TransactionScope()) { try { using(var _context = new DbContext()) { //执行相关操作 _context.SaveChanges(); } using(var _context2 = new DbContext()) { //执行相关操作 _context2.SaveChanges(); } tran.Complete(); } catch…
当把常用的特性填写到POCO实体类时,执行数据库操作时,需要根据实体类上的特性信息进行相应的操作,PetaPoco中的TableInfo和ColumnInfo类就是用来保存实体类上的特性信息. TableInfo用来保存数据库表的信息,包括TableName,PrimaryKey,主键是否自增字段,使用Oracle数据库时的Sequence名称. ColumnInfo用来保存数据库表的列信息,包括ColumnName,是否结果列(不用更新数据库),数据库列类型是否转换为UTC时间.更新模板和插入…
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中的Database类中 实现方式有2种,以下以查询字段为例 1.通过扩展方式实现,此方式不改变被调用(Database)类名(只能增加方法) public static class DatabaseExtension { public static T SingleOrDefaultWithWhere<T>(this Database db, string name, object value) { string sql = "WH…
Handsontable虽然处理速度很快,但当数据量达到10W+的时候很容易导致浏览器内存泄漏,这时候可以用分页来解决.官网提供了前端分页demo,测试后发现也只能处理低于10W的数据,而且调试的时候由于是一次性把所有数据全部加载到浏览器,浏览器会非常卡,这个时候最好选择数据库分页. 一.前端分页 这边就借用官网的前端分页核心代码. <div class="descLayout"> <div class="pad" data-jsfiddle=&q…