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

>问题症状   

  在使用Petapoco的Update方法时通过匿名对象传入单个需要修改的字段时提示“给定关键字不在字典中”,调试中发现运行到

if (primaryKeyName != null)
{
-->    pkpi = pd.Columns[primaryKeyName].PropertyInfo;
}

时主键字段并未在pd.Columns中,于是报错。

>解决办法   

  解决方法在https://github.com/toptensoftware/PetaPoco/issues/119,也就是将主键字段也放入匿名对象中就好了。用了不长Petapoco,发现哪哪都是错~~

时间: 2024-10-03 09:12:30

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

安装windows Server 2003和2008 Sp1时提示:安装程序在计算机中识别出了下列大容量存储设备

一.问题描述: 有一个PC技嘉的主板,安装系统时提示如下问题: ************************************************安装程序在计算机中识别出了下列大容量存储设备:.无.指定其他供windows使用的scsi适配器.cd-rom驱动器或特殊磁盘控制器,包括那些可从大容量存储设备制造厂商处获得软盘支持的设备,请按s.如果您没有制造厂商提供的大容量存储设备的驱动软盘,或不想使用其他厂商提供的大容量存储设备,请按enter这里如果按enter,后面一步就直接结

07_面向对象(成员变量和局部变量区别、类作为形式参数的问题、匿名对象、封装、private关键字、this关键字、构造方法、成员方法、static关键字、静态变量和成员变量、main方法)_02

7:构造方法(掌握)    (1)作用:用于对对象的数据进行初始化    (2)格式:        A:方法名和类名相同        B:没有返回值类型,连void都不能有        C:没有返回值                思考题:构造方法中可不可以有return语句呢?        可以.而是我们写成这个样子就OK了:return;        其实,在任何的void类型的方法的最后你都可以写上:return;    (3)构造方法的注意事项        A:如果我们没写构

vb6加载时提示出错,窗体log文件中错误信息为:控件 XX 的类 MSComctlLib.ListView 不是一个已加载的控件类。

解决办法:单击[工程] -- [部件] 添加此Microsoft Windows Common Controls-6.0 (SP6)部件,如果列表中没有,浏览到~\project\包\Support中 添加MSCOMCTL.OCX此部件,如果还不行,需要注册一下此部件,然后保存重启电脑或者vb.如何注册:参考此链接 http://jingyan.baidu.com/article/c910274bfea203cd361d2db9.html

匿名对象与非匿名对象的区别

类封装完以后就可以通过使用new关键字和类的构造方法来创建对象,这种对象分为两种:匿名对象与非匿名对象.何为匿名对象,何为非匿名对象呢?举个例子:假如有如下类: package com.heima.vo; public class Student{                    private String name="lisi";                    private int age=12;                    public void pri

面向对象、匿名对象、构造方法

1. 类和对象的关系 :类是对同一类事物(对象)的抽象,对象实际存在的该类的各种实体. 2. 面向对编程的核心:找合适的对象来做合适的事. 3. java中如何来找到对象: (1).sun自己定义好的类,必须知道这个类. (2).自定义类,通过自定义的类来出创建对象. 4. 类的格式 : class 类名 { //1.属性(成员变量) :描述对象的公共特性.. //2.方法 :描述对象的公共行为. } 如何通过类创建对象: 类名对象名 = new  类名(); 5. 匿名对象 :没有名字对象 匿

匿名对象和object的转换

有时候经常用到需要把一个匿名对象存入session或List<object>或其他容器中,可是取出来的时候变成object了,不太方便使用. 下面是一种转换方式:     class Program     {         static void Main(string[] args)         {             List<object> olist = new List<object>();             olist.Add(new {

java学习--基础知识进阶第二天--继承、匿名对象&amp;final、抽象类

今日内容介绍 u 继承 u 抽象类 第1章 继承 1.1 继承的概述 在现实生活中,继承一般指的是子女继承父辈的财产.在程序中,继承描述的是事物之间的所属关系,通过继承可以使多种事物之间形成一种关系体系. 1.2 继承的格式&使用  在程序中,如果想声明一个类继承另一个类,需要使用extends关键字. 格式: class 子类 extends 父类 {} 1.2.1 案例代码一: package com.itheima_01; /* * 继承:多个类有共同的成员变量和成员方法,抽取到另外一个类

this/super/static/final/匿名对象/继承/抽象类/访问权限修饰符

1.this关键字的作用     1)调用本类中的属性;     2)调用本类中的构造方法;且只能放首行,且必须留一个构造方法作为出口,即不能递归调用     3)表示当前对象; 2.匿名对象     直接new出来的对象,不创建变量名,且只能使用一次,通常作为方法的参数及返回值使用 3.继承     继承是面向对象的三大特征之一,通过关键字:extends实现,被继承的类称为父类(也称作基类/超类),实现继承的类称为子类(也称作派生类).     特点:     (1)通过继承,子类可以直接访

Java基础学习笔记十 Java基础语法之final、static、匿名对象、内部类

final关键字 继承的出现提高了代码的复用性,并方便开发.但随之也有问题,有些类在描述完之后,不想被继承,或者有些类中的部分方法功能是固定的,不想让子类重写.可是当子类继承了这些特殊类之后,就可以对其中的方法进行重写,那怎么解决呢?要解决上述的这些问题,需要使用到一个关键字final,final的意思为最终,不可变.final是个修饰符,它可以用来修饰类,类的成员,以及局部变量. final的特点 final修饰类不可以被继承,但是可以继承其他类. class Yy {} final clas