【问题标题】:PetaPoco/NPoco - calculated properties in pocoPetaPoco/NPoco - poco 中的计算属性
【发布时间】:2013-08-22 00:40:11
【问题描述】:

我在我的项目中使用 PetaPoco/NPoco。我正在使用的数据库架构并不是我们认为的很好,因此我不能直接将 POCO 绑定到我的 wpf mvvm 视图(这是我在创建数据库架构时曾经能够做的事情)。我正在考虑这个问题的两种可能的解决方案:

  1. 向 POCO 添加未映射的属性
  2. 使用对 poco 的引用为 pocos 创建一个包装器

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

【问题讨论】:

    标签: c# petapoco npoco


    【解决方案1】:

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

    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; }
    
            ....
    

    【讨论】:

    猜你喜欢
    • 2012-12-20
    • 2014-01-23
    • 2014-01-31
    • 2014-03-09
    • 1970-01-01
    • 1970-01-01
    • 2016-05-28
    • 2020-12-01
    • 2020-02-05
    相关资源
    最近更新 更多