Dapper中[Key]和[Table]特性有什么用 Dapper.Contrib特性详解

admin 百科 11
[Table] 和 [Key] 是 Dapper.Contrib 中用于实体映射的核心特性:[Table] 标注类以指定对应数据库表名,避免默认复数推导错误;[Key] 标注自增主键属性,插入时忽略该字段并回填生成值;非自增主键须用[ExplicitKey]。

Dapper中[Key]和[Table]特性有什么用 Dapper.Contrib特性详解-第1张图片-佛山资讯网

[Table][Key] 是 Dapper.Contrib 中用于实体类映射的核心特性,它们不参与 Dapper 本体(纯 SQL 扩展)的运行,只在 Dapper.Contrib 提供的高级 CRUD 方法(如 InsertGetUpdate)中起作用。

Table 特性:告诉 Dapper.Contrib “这张表叫什么”

它标注在类上,明确指定该实体对应数据库中的哪张物理表。如果不加,Dapper.Contrib 会按约定自动推导:把类名变成复数形式(比如 UserUsers),容易出错或不匹配。

  • 必须是类级别,不能标在属性或方法上
  • 值就是真实表名,支持带 schema,例如 [Table("dbo.Customers")]
  • 如果数据库表名含特殊字符或大小写敏感,加 [Table] 是最稳妥的做法

Key 特性:声明“这个字段是自增主键”

它标注在某个属性上,表示该字段是数据库中自动增长(IDENTITY)类型的主键,比如 intlong 类型的 ID 列。

标签: mysql app

发布评论 0条评论)

还木有评论哦,快来抢沙发吧~