Dan*_*don 1 .net c# properties
我有很多次写过C#属性,看起来像这样:
private string _Id;
public string Id
{
get
{
return _Id;
}
set
{
_Id = value.Trim();
}
}
Run Code Online (Sandbox Code Playgroud)
上面的代码片段声明了一个名为Id的字符串属性,并使其Trim在传递给setter的值上自动调用扩展方法.没有Trim逻辑,我可以写简单:
public string Id {get; set;}
Run Code Online (Sandbox Code Playgroud)
好像我已经写了很多代码来完成一些简单的事情.
有没有更好的办法?
有没有更好的办法?
好吧,你可以让它看起来像更少的代码(并在阅读时减少杂乱的东西):
private string _Id;
public string Id
{
get { return _Id; }
set { _Id = value.Trim(); }
}
Run Code Online (Sandbox Code Playgroud)
甚至将整个房产本身放在一条线上:
private string _Id;
public string Id { get { return _Id; } set { _Id = value.Trim(); } }
Run Code Online (Sandbox Code Playgroud)
但不,你不能让一个自动实现的属性做更多的事情,而不是简单的获取/设置为私有变量.
说实话,这真的不是那么多代码 - 它是相当多的语法,但你只需要声明一个变量并写两个语句.我不认为这真的太多了.
| 归档时间: |
|
| 查看次数: |
96 次 |
| 最近记录: |