我想做这个:
public Name
{
get;
set
{
dosomething();
??? = value
}
}
Run Code Online (Sandbox Code Playgroud)
是否可以使用自动生成的私有字段?
或者我需要以这种方式实现它:
private string name;
public string Name
{
get
{
return name;
}
set
{
dosomething();
name = value
}
}
Run Code Online (Sandbox Code Playgroud)
小智 30
你可以尝试这样的事情:
public string Name { get; private set; }
public void SetName(string value)
{
DoSomething();
this.Name = value;
}
Run Code Online (Sandbox Code Playgroud)
从C#7开始,您可以对属性get
和set
访问器使用表达式主体定义。
private string _name;
public string Name
{
get => _name;
set
{
DoSomething();
_name = value;
}
}
Run Code Online (Sandbox Code Playgroud)