2014-10-28 97 views
0

我有一个类的一些属性与列表中的其他类对象的列表。如何使用npoco更新列表中包含其他对象的对象?

[TableName("tblItem")] 
[PrimaryKey("ITM_Id", AutoIncrement = false)] 
[ExplicitColumns] 
public class Item 
{ 
    [Column("ITM_Id")] 
    public Guid Id { get; set; } 

    [Column("ITM_Name")] 
    public string Name { get; set; } 

    public List<PictureLink> PictureLink { get; set; } 
} 

[TableName("tblPictureLink")] 
[PrimaryKey("PIL_Id", AutoIncrement = false)] 
[ExplicitColumns] 
public class PictureLink 
{ 
    [Column("PIL_Id")] 
    public Guid Id { get; set; } 

    [Column("PIL_InformationType")] 
    public string InformationType { get; set; } 
} 

我想做出这样db.Update(项目)与npoco的更新 - 但是只有编号和名称被更新的属性,我怎么能做出与PictureLinks列表中相同的语句更新呢?

回答

0

附上子对象的更新在一个循环中,如下所示:

using (var scope = db.GetTransaction()) 
{ 
    db.Update(item); 
    foreach (var pictureLink in item.PictureLinks) 
    { 
     db.Update(pictureLink); 
    } 
    scope.Complete(); 
    } 

括在事务中的更新将确保回滚,如果有什么差错。

相关问题