首页 > 解决方案 > 如何防止某些类属性从 Web API 返回?

问题描述

我正在使用 Entity Framework Core 构建一个引用类库的 .NET Core Web API。我们是数据库优先的,因此可以预见会定期覆盖我们的数据类以刷新它们。

例如,一个 Employee 对象具有 FirstName、LastName 和 Password,如何防止 Password 属性与对象一起传回?

如果我需要操作数据类,是否必须记住每次删除/重新创建数据类时都要手动重新编辑?感谢您的任何帮助!

标签: asp.netasp.net-web-api.net-coreentity-framework-core

解决方案


您应该使用数据传输对象 (DTO)。使用映射器填充自定义属性并将其发送到响应。你也可以试试这个(匿名类型):

var employee = ...get from db;

return Ok(new
{
    employee.FirstName,
    employee.LastName
});

推荐阅读