[Table] 和 [Key] 是 Dapper.Contrib 中用于实体映射的核心特性:[Table] 标注类以指定对应数据库表名,避免默认复数推导错误;[Key] 标注自增主键属性,插入时忽略该字段并回填生成值;非自增主键须用[ExplicitKey]。
![Dapper中[Key]和[Table]特性有什么用 Dapper.Contrib特性详解-第1张图片-佛山资讯网 Dapper中[Key]和[Table]特性有什么用 Dapper.Contrib特性详解-第1张图片-佛山资讯网](https://www.fsgp.cn/zb_users/upload/2025/12/20251217005017176590381796340.png)
[Table] 和 [Key] 是 Dapper.Contrib 中用于实体类映射的核心特性,它们不参与 Dapper 本体(纯 SQL 扩展)的运行,只在 Dapper.Contrib 提供的高级 CRUD 方法(如 Insert、Get、Update)中起作用。
Table 特性:告诉 Dapper.Contrib “这张表叫什么”
它标注在类上,明确指定该实体对应数据库中的哪张物理表。如果不加,Dapper.Contrib 会按约定自动推导:把类名变成复数形式(比如 User → Users),容易出错或不匹配。
- 必须是类级别,不能标在属性或方法上
- 值就是真实表名,支持带 schema,例如
[Table("dbo.Customers")] - 如果数据库表名含特殊字符或大小写敏感,加
[Table]是最稳妥的做法
Key 特性:声明“这个字段是自增主键”
它标注在某个属性上,表示该字段是数据库中自动增长(IDENTITY)类型的主键,比如 int 或 long 类型的 ID 列。
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
还木有评论哦,快来抢沙发吧~