首页 > 解决方案 > ASP.NET Core API 模型概念

问题描述

我正在开发一个示例应用程序,该应用程序公开了一个宁静的 API。我还使用 EF 核心将实体 mkd 映射到 SQLite 数据库。

每个实体都有一个自动生成且唯一的 ID 属性。

api 通过提供模型对象来公开创建实体的方法。目前我正在使用映射到 EF Core 的相同模型(包括 ID 字段)。

老实说,我不认为在创建实体期间公开 ID 字段是一个好习惯,所以我想创建另一个没有 ID 字段的模型,该模型将传递给 create 方法,然后将其映射到 EF 是的模型使用。

这是一个好习惯还是太过分了?

我错过了什么吗?

标签: c#restasp.net-core.net-core

解决方案


您本质上所做的是使用 DTO/ViewModel 而不是直接使用模型对象,这被认为是一种很好的做法。它也使您免于过度发布的问题。或者,您也可以选择绑定特定属性 - 请参阅https://www.hanselman.com/blog/ASPNETOverpostingMassAssignmentModelBindingSecurity.aspx


推荐阅读