mirror of
https://github.com/dotnetcore/FreeSql.git
synced 2026-02-06 16:30:52 +08:00
update
9
实体特性.md
9
实体特性.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<T>().AsTable((_, old) => "public.tabname").ToList()
|
||||
|
||||
指定实体的表名,修改为实体类名。指定数据库旧的表名,修改实体命名时,同时设置此参数为修改之前的值,CodeFirst才可以正确修改数据库表;否则将视为【创建新表】。
|
||||
修改表名,须指定旧的表名,CodeFirst才可以正确修改数据库表。
|
||||
|
||||
```csharp
|
||||
[Table(OldName = "Topic")]
|
||||
class Topic2 {
|
||||
|
||||
Reference in New Issue
Block a user