MVC.net 在模型中隐藏字段

MVC.net Hiding Fields within a model

所以我正在使用 ASP.net MVC Web API 创建一个 API。我目前有一个模型,其中包含数据库中用户的字段。我在这个模型上有一个密码字段。请参阅下面的示例。

public class Account
{
    [Key]
    public Guid UserId { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public string UserName { get; set; }
    public string Email { get; set; }
    public string Password { get; set;  }
 }

我 return 此模型在通过 HTTP 调用控制器方法时使用 JSON。这很好用。 我的问题是,如何停止 return 一起编辑密码字段?无需完全删除该字段。

我最初的想法是创建另一个模型 class,我用它来 return 没有密码字段的数据,但我不想为了一个字段而重复自己。

有什么建议吗?

您应该可以用

标记这些字段
 [JsonIgnore]
 [XmlIgnore]
 public string Password { get; set;  }

防止这些字段在 JSON 或 XML 请求中使用。