Asp.net 多对多表的核心 WebApi 端点
Asp.net core WebApi endpoint for many to many tables
我正在使用我们的设计师团队提供的端点开发 asp.net 核心网络 API 应用程序。这是多对多的关系。下面是tables
表名:
- 用户(用户 ID、姓名、性别)。
- 角色 (RoleId, Title)
- 用户角色(用户 ID,
RoleId).
关系:
- 用户 (1) 到 (许多) UserRole
- 角色 (1) 到 (许多 (UserRole)。
角色终点:
- GET –> V1/Roles
- POST –> V1/Roles
- PUT –> V1/Roles(一起更新多条记录 – JSON数组作为请求体)
- PUT –> V1/Roles/{RoleId}
- 删除 –> V1/Roles/{RoleId}
- DELETE V1/Roles(一起删除多条记录 – JSON 数组作为请求体)
用户端点:
- GET –> V1/Users
- POST –> V1/Users
- PUT –> V1/Users/{UserId}
- 删除 –>V1/Users/{UserId}
UserRole 端点:
- GET –> V1/用户角色
- POST –> V1/用户角色
- PUT –> V1/用户角色
- 删除–> V1/用户角色
问题:
假设我们的组织中有数千个用户和数千个角色。
请告知为多对多关系设计端点的最佳实践是什么 tables.
此外,如果我们想在一次调用中添加、更新或删除多个用户及其分配的角色,最好的方法是什么?
我已经创建了以下用于加入 table 的端点,但不确定。请指教
- POST –> V1/用户角色
- PUT –> V1/用户角色
- 删除 –> V1/用户角色
简而言之,如何插入和更新多对多。我们什么时候加入table?我试过 google 但没有找到任何例子
Also, if we want to add, update or delete many users and their
assigned roles in one call what is the best way?
I have created the below endpoint for joining tables but not sure.
please advice.
POST –> V1/ UserRole
PUT –> V1/ UserRole
DELETE –> V1/ UserRole
首先,端点代表在路由方面彼此不同的应用程序功能单元。所以它不取决于用户和角色的数量,而是取决于你的功能。您可以创建以下端点:
- POST –> V1/ UserRole : 添加用户到角色。
- PUT –> V1/ UserRole : 更新用户的角色。
- DELETE –> V1/ UserRole : 从角色组中删除用户。
由于您已经配置了用户和角色table之间的many to many relationship,并且UserRole是加入table。当您调用上述端点时,您可以查询用户和角色 table 以检查用户和角色(参数)是否存在。如果没有,请创建一个新项目。然后更新 UserRole table 项。
这里有一些更新相关实体的相关文章,您可以参考:
Tutorial: Update related data - ASP.NET MVC with EF Core
Updating many to many relationships in Entity Framework Core
我正在使用我们的设计师团队提供的端点开发 asp.net 核心网络 API 应用程序。这是多对多的关系。下面是tables
表名:
- 用户(用户 ID、姓名、性别)。
- 角色 (RoleId, Title)
- 用户角色(用户 ID, RoleId).
关系:
- 用户 (1) 到 (许多) UserRole
- 角色 (1) 到 (许多 (UserRole)。
角色终点:
- GET –> V1/Roles
- POST –> V1/Roles
- PUT –> V1/Roles(一起更新多条记录 – JSON数组作为请求体)
- PUT –> V1/Roles/{RoleId}
- 删除 –> V1/Roles/{RoleId}
- DELETE V1/Roles(一起删除多条记录 – JSON 数组作为请求体)
用户端点:
- GET –> V1/Users
- POST –> V1/Users
- PUT –> V1/Users/{UserId}
- 删除 –>V1/Users/{UserId}
UserRole 端点:
- GET –> V1/用户角色
- POST –> V1/用户角色
- PUT –> V1/用户角色
- 删除–> V1/用户角色
问题: 假设我们的组织中有数千个用户和数千个角色。 请告知为多对多关系设计端点的最佳实践是什么 tables.
此外,如果我们想在一次调用中添加、更新或删除多个用户及其分配的角色,最好的方法是什么?
我已经创建了以下用于加入 table 的端点,但不确定。请指教
- POST –> V1/用户角色
- PUT –> V1/用户角色
- 删除 –> V1/用户角色
简而言之,如何插入和更新多对多。我们什么时候加入table?我试过 google 但没有找到任何例子
Also, if we want to add, update or delete many users and their assigned roles in one call what is the best way?
I have created the below endpoint for joining tables but not sure. please advice.
POST –> V1/ UserRole
PUT –> V1/ UserRole
DELETE –> V1/ UserRole
首先,端点代表在路由方面彼此不同的应用程序功能单元。所以它不取决于用户和角色的数量,而是取决于你的功能。您可以创建以下端点:
- POST –> V1/ UserRole : 添加用户到角色。
- PUT –> V1/ UserRole : 更新用户的角色。
- DELETE –> V1/ UserRole : 从角色组中删除用户。
由于您已经配置了用户和角色table之间的many to many relationship,并且UserRole是加入table。当您调用上述端点时,您可以查询用户和角色 table 以检查用户和角色(参数)是否存在。如果没有,请创建一个新项目。然后更新 UserRole table 项。
这里有一些更新相关实体的相关文章,您可以参考:
Tutorial: Update related data - ASP.NET MVC with EF Core
Updating many to many relationships in Entity Framework Core