C#语法快捷方式

Gra*_*ett 3 c# syntax shortcuts

我想知道是否存在C#语法快捷方式的集合或列表.简单地省略if语句上的花括号,直到像??coalesce运算符这样的东西.

cod*_*nix 10

a = b ? c : d ;
Run Code Online (Sandbox Code Playgroud)

是的缩写

if (b) a = c; else a = d;
Run Code Online (Sandbox Code Playgroud)

int MyProp{get;set;}
Run Code Online (Sandbox Code Playgroud)

是的缩写

int myVar;
int MyProp{get {return myVar; } set{myVar=value;}}
Run Code Online (Sandbox Code Playgroud)

另请参阅visual studio中的代码模板,它允许您加快编码速度.

但请注意,短代码并不一定意味着良好的代码.


mr_*_*ski 10

我最喜欢的是

a = b ?? c;
Run Code Online (Sandbox Code Playgroud)

转化为

if (b != null) then a = b; else a = c;
Run Code Online (Sandbox Code Playgroud)

  • 实际上,如果b不为null,则a等于b,否则等于c (2认同)

Yat*_*rix 5

c# 6.0 有一些有趣的。?.?(空条件运算符)是我的最爱。

var value = obj != null ? obj.property : null; 变成

var value = obj?.property
Run Code Online (Sandbox Code Playgroud)

var value = list != null ? list[0] : null;

变成

var value = list?[0]
Run Code Online (Sandbox Code Playgroud)