mirror of
https://github.com/dotnetcore/FreeSql.git
synced 2026-02-17 22:00:56 +08:00
update
63
实体关系.md
63
实体关系.md
@@ -1,62 +1,75 @@
|
||||
### OneToOne 一对一
|
||||
```csharp
|
||||
class a {
|
||||
public int id { get; set; } //id、objbid、objb_id
|
||||
class User {
|
||||
public int Id { get; set; } //Id、UserId、User_id
|
||||
|
||||
public b objb { get; set; }
|
||||
public UserExt UserExt { get; set; }
|
||||
}
|
||||
|
||||
class b {
|
||||
public int id { get; set; } //id、objaid、obja_id
|
||||
class UserExt {
|
||||
public int id { get; set; } //Id、UserId、User_id、UserExtId、UserExt_id
|
||||
|
||||
public a obja { get; set; }
|
||||
public User User { get; set; }
|
||||
}
|
||||
```
|
||||
|
||||
[《OneToOne 一对一,怎么添加数据?》](https://github.com/2881099/FreeSql/issues/45)
|
||||
|
||||
### ManyToOne 多对一
|
||||
```csharp
|
||||
class a {
|
||||
public int id { get; set; }
|
||||
class Group {
|
||||
public int Id { get; set; } //Id、GroupId、Group_id
|
||||
}
|
||||
|
||||
class b {
|
||||
public int id { get; set; }
|
||||
class User {
|
||||
public int Id { get; set; } //Id、UserId、User_id
|
||||
|
||||
public int aid { get; set;} //id、aid、a_id
|
||||
public a a { get; set; }
|
||||
|
||||
public int xxx_id { get; set;} //id、xxxid、xxx_id
|
||||
public a xxx_a { get; set; } //存在多个相同类型时,与上面的属性区分
|
||||
public int AGroupId { get; set; }
|
||||
public Group AGroup { get; set; }
|
||||
|
||||
public int BGroupId { get; set; }
|
||||
public Group BGroup { get; set; }
|
||||
}
|
||||
```
|
||||
|
||||
### OneToMany 一对多
|
||||
```csharp
|
||||
class order {
|
||||
public int id { get; set; }
|
||||
class Group {
|
||||
public int Id { get; set; } //Id、GroupId、Group_id
|
||||
|
||||
public ICollection<item> items { get; set; }
|
||||
public ICollection<User> AUsers { get; set; }
|
||||
public ICollection<User> BUsers { get; set; }
|
||||
}
|
||||
|
||||
class item {
|
||||
public int id { get; set; }
|
||||
class User {
|
||||
public int Id { get; set; } //Id、UserId、User_id
|
||||
|
||||
public int orderid { get; set; } //orderid、order_id、a1id、a1_id
|
||||
|
||||
public int AGroupId { get; set; }
|
||||
public Group AGroup { get; set; }
|
||||
|
||||
public int BGroupId { get; set; }
|
||||
public Group BGroup { get; set; }
|
||||
}
|
||||
```
|
||||
|
||||
[《OneToMany 一对多,怎么添加数据?》](https://github.com/2881099/FreeSql/issues/46)
|
||||
|
||||
### Parent 父子
|
||||
```csharp
|
||||
class order {
|
||||
public int id { get; set; }
|
||||
class Group {
|
||||
public int Id { get; set; } //Id、GroupId、Group_id
|
||||
|
||||
public int parentid { get; set; } //parentid、parent_id
|
||||
public order parent { get; set; }
|
||||
public int ParentId { get; set; } //ParentId、Parent_id
|
||||
public Tag Parent { get; set; }
|
||||
|
||||
public ICollection<item> orders { get; set; }
|
||||
public ICollection<Group> Childs { get; set; }
|
||||
}
|
||||
```
|
||||
|
||||
父子关系,与一对多其实差不多,添加数据参数上面的连接;
|
||||
|
||||
### ManyToMany 多对多
|
||||
```csharp
|
||||
class Song {
|
||||
|
||||
7
实体特性.md
7
实体特性.md
@@ -32,17 +32,18 @@ class AddUniquesInfo {
|
||||
[Column(Unique = "uk_phone")]
|
||||
public string phone { get; set; }
|
||||
|
||||
[Column(Unique = "uk_group_index")]
|
||||
[Column(Unique = "uk_group_index, uk_group_index22")]
|
||||
public string group { get; set; }
|
||||
|
||||
[Column(Unique = "uk_group_index")]
|
||||
public int index { get; set; }
|
||||
|
||||
[Column(Unique = "uk_group_index222")]
|
||||
[Column(Unique = "uk_group_index22")]
|
||||
public string index22 { get; set; }
|
||||
}
|
||||
```
|
||||
|
||||
Unique 指定相同的标识,代表联合唯一键;
|
||||
唯一键,在多个属性指定相同的标识,代表联合键;可使用逗号分割多个 UniqueKey 名。
|
||||
|
||||
## 数据库类型(DbType)
|
||||
|
||||
|
||||
5
更新日志.md
5
更新日志.md
@@ -1,6 +1,11 @@
|
||||
|
||||
完整版本:年数-月-日-当日版本号,FreeSql、FreeSql.Repository、FreeSql.DbContext 版本号相同。
|
||||
|
||||
## v0.5.7
|
||||
|
||||
- 补充 nuget 包增加 xmlDoc 编译,原来使用者之前一直没有注释;
|
||||
- 调整 Column.Unique 定义规则,解决同一属性不可配置多次的问题;
|
||||
|
||||
## v0.5.6
|
||||
|
||||
- 优化 兼容不同数据库 bool 的表达式解析,如:Where(a => a.Bool)、Where(a => !a.Bool);
|
||||
|
||||
Reference in New Issue
Block a user