PetaPoco插入/更新

时间:2016-09-08 14:39:52

标签: mysql petapoco

我有一个包含以下字段的表格。我无法更新表中的现有值。我想基于SourceId更新它,而SourceId不是主键(Id是主键)。以下是班级代表。

我不想修改PetaPoco.cs文件。请帮忙。谢谢。

[TableName("Incident")]
[PrimaryKey("Id", AutoIncrement = true)]
public class Incident
{
    public int Id { get; set; }
    public string SourceId { get; set; }
    public int AgencyId { get; set; }
    public DateTime? OccurredOn { get; set; }
    public DateTime? ImportedOn { get; set; }
    public DateTime? LastUpdatedOn { get; set; }
}

1 个答案:

答案 0 :(得分:1)

您可以使用SourceID选择记录,然后进行更新 例如:

var rec = db.FirstOrDefault<Incident>("WHERE SourceID = @0", SourceID);
rec.AgencyId = NewValueForAgencyId;
db.Update(rec);