2016-09-08 22 views
0

私は次のフィールドを持つテーブルを持っています。私はテーブルの既存の値を更新することができません。主キーではないSourceIdに基づいて更新したい(Idは主キー)。以下はクラス表現です。PetaPoco Insert/Update

私は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; } 
} 

答えて

0

SourceIDを使用してレコードを選択し、更新することができます。
例:

var rec = db.FirstOrDefault<Incident>("WHERE SourceID = @0", SourceID); 
rec.AgencyId = NewValueForAgencyId; 
db.Update(rec); 
関連する問題