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,730
  • 4
  • 28
  • 35

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
  • 134,492
  • 47
  • 225
  • 308
3

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

sepp2k
  • 363,768
  • 54
  • 674
  • 675
Douglas
  • 36,802
  • 9
  • 76
  • 89
1

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

Community
  • 1
  • 1
mint
  • 3,341
  • 11
  • 38
  • 55
1

Using using keyword

Giorgi
  • 30,270
  • 13
  • 89
  • 125
1

Extension methods.

Joe White
  • 94,807
  • 60
  • 220
  • 330
0

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

benPearce
  • 37,735
  • 14
  • 62
  • 96