PetaPoco / NPoco - 在poco中计算的属性

时间:2013-08-20 04:30:31

标签: c# petapoco npoco

我在我的项目中使用PetaPoco / NPoco。我正在使用的数据库模式不是很好,因此我不能直接将POCO绑定到我的wpf mvvm视图(这是我以前在创建数据库模式时能够做到的)。我正在考虑两个可能解决这个问题的方法:

  1. 将未映射的属性添加到POCO
  2. 通过引用poco
  3. 为pocos创建一个包装器

    此问题是否存在经过验证的模式?

1 个答案:

答案 0 :(得分:2)

您可以根据需要使用ExplicitColumns操作PetaPoco地图以映射到不同的命名列。您还可以将ResultColumn用于您希望从数据库中获取的属性,以便不进行更新/插入。最后,您还可以使用未映射的属性进行与DB无关的额外工作。

namespace Site.Models {
    [TableName("Hotel")]
    [PrimaryKey("HotelID")]
    [ExplicitColumns]
    public class Hotel {
        [PetaPoco.Column("HotelID")]
        public int HotelID { get; set; }

        [PetaPoco.Column("HotelClaseID")]
        public int? HotelClaseID { get; set; }

        [ResultColumn]
        public string HotelClase { get; set; }

        [Required]
        [PetaPoco.Column("Nombre")]            
        public String Nombre { get; set; }

        ....