基于另一个属性的 C# 属性

时间:2021-02-22 07:13:21

标签: c# .net api properties request

下面给出了具有两个相互依赖的属性的请求的一小部分。

我需要这样做:

如果发送了 DisableMessages 而 MessagesOn 没有通过 API 发送,则默认 MessagesOn 为 false。

如果未发送 DisableMessages 且未发送 MessagesOn,则默认 DisableMessages 为 false,MessagesOn 为 true。

public class CreateRequest
{
    public bool DisableMessages { get; set; }

    public bool MessagesOn { get; set; }
}

1 个答案:

答案 0 :(得分:2)

使用支持变量和可为空类型。我要离开 MessagesOn 给你设置。

public class CreateRequest
{
    bool? disableMessages;
    bool? messagesOn;

    public bool? DisableMessages { 
        get { return this.disableMessages == null && messagesOn == null ? false : this.disableMessages;} 
        set { this.disableMessages = value;} }

    public bool? MessagesOn { get {return /* DisableMessages is sent and MessagesOn is not sent */;} set { this.messagesOn = value;} }
}
相关问题