diff --git a/实体特性.md b/实体特性.md index f60c11c..091da3b 100644 --- a/实体特性.md +++ b/实体特性.md @@ -5,16 +5,16 @@ v1.4.0+ 已自动识别 EFCore 实体特性 Key/Required/NotMapped/MaxLength/Str FreeSql 默认使用实体的类名,或属性名与数据库映射,也可以指定映射的名称; -指定实体的表名,指定 Name 后,实体类名变化不影响数据库对应的表。FreeSql尽量支持了对多数据库或schema支持,不防试试指定表名为:其他数据库.表名,不同数据库的指定方式有差异,这一点以后深入解答。 +指定实体的表名 Name 后,实体类名变化不影响数据库对应的表。FreeSql尽量支持了对多数据库或schema支持,不防试试指定表名为:其他数据库.表名。 ```csharp -[Table(Name = "db2.tb_topic111")] +[Table(Name = "db2.tb_topic")] class Topic { //... } ``` -> 注意:尽量不要使用带点的表名,只有 MySql/Sqlite 对此类表名支持 CodeFirst。但是它不影响 CRUD 功能,使用 [Table(Name = "\`sys.config\`")] 解决 +> 注意:带点的表名,使用 [Table(Name = "\`sys.config\`")] 解决 > 指定表名的几种方法,优先级从小到大: @@ -24,7 +24,8 @@ class Topic { - 4、[Table(Name = "public.tabname")] - 5、AsTable fsql.Select().AsTable((_, old) => "public.tabname").ToList() -指定实体的表名,修改为实体类名。指定数据库旧的表名,修改实体命名时,同时设置此参数为修改之前的值,CodeFirst才可以正确修改数据库表;否则将视为【创建新表】。 +修改表名,须指定旧的表名,CodeFirst才可以正确修改数据库表。 + ```csharp [Table(OldName = "Topic")] class Topic2 {