You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写无需处处添加PropertyChanged处理器的测试驱动代码

处理用户邮箱显示状态的ViewModel实现

需求背景

我碰到了一个逻辑清晰的需求:我们有一个包含User实体和UserPrefs配置项的UserProfile,需要根据配置控制邮箱的对外显示规则:

  • 当UserPrefs.ShowEmail设为true时,UserProfile的Email字段要返回用户的真实邮箱(也就是User.Email的值)
  • 当UserPrefs.ShowEmail设为false时,Email字段要固定返回"Hidden"

最小可行实现

这个需求逻辑很直接,我在UserProfileViewModel里写了一个只读属性就完成了满足需求的最小实现:

public string Email 
{ 
    get 
    { 
        if (UserPrefs.ShowEmail) 
            return User.Email; 
        else 
            return "Hidden"; 
    } 
}

如果想要代码更简洁,也可以换成三元表达式的写法,逻辑完全一致:

public string Email => UserPrefs.ShowEmail ? User.Email : "Hidden";

内容的提问来源于stack exchange,提问作者Ash

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 08:27:11