1

I came across a C# language feature today courtesy of ReSharper, the ?? operator. This helped make the code even more concise than my initial attempt. See below for iteration in improving lines/length/readability of code.

A first attempt could be something like..

if (usersEmail == null)
  userName = firstName;
else
  userName = usersEmail;

Refactored to..

userName = usersEmail == null ? firstName : usersEmail;

Initially I thought the above would be the most efficient/concise version, but there is a third step...

userName = usersEmail ?? firstName;

Id like to know if you have any similar examples where C# language features help with reducing lines of code and improving readability?

Matt
  • 2,650
  • 4
  • 27
  • 33

6 Answers6

4

the using block, LINQ, anonymous delegates, the list would just go on..

C# has a very nice habit of introducing features in every major release that cut down the amount of code that you have to write.

Gishu
  • 130,964
  • 46
  • 219
  • 301
3

The var keyword for implicit static typing and automatic properties are two good examples.

sepp2k
  • 353,842
  • 52
  • 662
  • 667
Douglas
  • 35,066
  • 8
  • 72
  • 89
1

This thread has a lot of gems: Hidden Features of C#? (including the one you mentioned)

Community
  • 1
  • 1
mint
  • 3,233
  • 10
  • 37
  • 54
1

Using using keyword

Giorgi
  • 29,755
  • 12
  • 86
  • 122
1

Extension methods.

Joe White
  • 91,162
  • 55
  • 215
  • 326
0

LINQ queries allowing you to express the query criteria better than a foreach loop

benPearce
  • 36,402
  • 14
  • 63
  • 95