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對其的說明是,如果某一屬性只用於查詢,不用於插入和更新操作時,可以用這個特性進行修飾。

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM