有什么方法可以只实现 setter 并get;在 c# 或其他方式中继续使用速记 ( ) 作为 getter 吗?
例如:在设置时将电子邮件转换为小写 -
public string Email { get; set { Email = value.ToLower(); } }
Run Code Online (Sandbox Code Playgroud)
我们可以以任何方式做到这一点吗?
不,你不能。auto 属性语法创建了一个隐藏字段,您无法通过代码访问该字段,因此即使上述语法有效,您也无法设置该字段,但事实并非如此
使用最新 C# 的最短版本是
private string _Email
public string Email { get => _Email; set => _Email = value.ToLower(); }
Run Code Online (Sandbox Code Playgroud)