zoukankan      html  css  js  c++  java
  • PetaPoco的几个特性 拓荒者

    在PetaPoco中,Brad并没有定义太多Attribute来修饰Models或Fields。这些为数不多的几个Attribute如下:

    • ColumnAttribute
    • ExplicitColumnsAttribute
    • IgnoreAttribute
    • PrimaryKeyAttribute
    • ResultColumnAttribute
    • TableNameAttribute

    ExplicitColumnsAttribute 和 ColumnAttribute

    使用ExplicitColumnsAttribute修饰的类必须为每一个属性必须使用ColumnAttribute来修饰。例如:

        [ExplicitColumns]
        public class Album
        {
            [Column("AlbumId")]
            public int AlbumId { get; set; }
            [Column("Title")]
            public string Title { get; set; }
            
            public int ArtistId { get; set; }
        }

    在这个实体中,ArtistId不会被映射,如果要被映射,需要添加Column修饰。

    IgnoreAttribute

    顾名思义,如果不需要某一列映射到数据库中,可以将该列标记为Ignore,这一列就不会被映射了。

        public class Album
        {
            public int AlbumId { get; set; }
            public string Title { get; set; }
            [Ignore]
            public int ArtistId { get; set; }
        }

    PrimaryKeyAttribute

    这个特性是用来标记实体的,它指明了实体的主键列名、是否自增,以及用于Oracle的sequence名称。默认情况下,其autoIncrement为true,如果使用非自增列作为主键,需要设定一下,或者,干脆就不适用这个属性进行修饰。

    TableNameAttribute

    这个特性用来标记实体所对应的数据表名称。

    ResultColumnAttribute

    用来修饰属性的,Brad对其的说明是,如果某一属性只用于查询,不用于插入和更新操作时,可以用这个特性进行修饰。

  • 相关阅读:
    python基础之列表解析
    初学者学习python2还是python3?
    给曾经是phper的程序员推荐个学习网站
    详解python2 和 python3的区别
    Python如何进行中文注释
    import方法引入模块详解
    详解python 局部变量与全局变量
    131-19. 删除链表的倒数第N个节点
    65.django中关于跨域访问设置
    130-283. 移动零
  • 原文地址:https://www.cnblogs.com/youring2/p/2554976.html
Copyright © 2011-2022 走看看