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对其的说明是,如果某一属性只用于查询,不用于插入和更新操作时,可以用这个特性进行修饰。
本文作者:拓荒者IT
本文链接:https://www.cnblogs.com/youring2/archive/2012/06/19/2554976.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
📌做了个微信公众号【拓荒者IT】,分享各种技术干货,新内容首发到公众号,欢迎关注❤️
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步