Click here to Skip to main content
15,893,588 members

Survey Results

How often do you use the var type in C#? (1= never, 5=always)   [Edit]

Survey period: 17 Aug 2009 to 24 Aug 2009

The var keyword can be a saint or a sinner. Choose "1" if you never use var in this scenario (or never use that scenario), up to "5" for always, whenever possible. (Suggested by Asher)

OptionVotes12345 
In normal C# coding (1 = you don"t code in C#, 5=for all C# variables possible)9370%0%0%0%0%
With LINQ9370%0%0%0%0%
For declaring complex types9370%0%0%0%0%
For using complex types (eg in foreach loops)9370%0%0%0%0%
With anonymous types9370%0%0%0%0%
When it saves typing9370%0%0%0%0%
When it makes the code look better (to you)9370%0%0%0%0%

View optional text answers (46 answers)


 
General[Message Deleted] Pin
Alexandre GRANVAUD16-Aug-09 21:24
Alexandre GRANVAUD16-Aug-09 21:24 
GeneralRe: Thanks for this C# only survey Pin
Derek Bartram16-Aug-09 23:34
Derek Bartram16-Aug-09 23:34 
JokeRe: Thanks for this C# only survey Pin
Keith Barrow17-Aug-09 5:26
professionalKeith Barrow17-Aug-09 5:26 
GeneralRe: Thanks for this C# only survey Pin
Derek Bartram17-Aug-09 6:17
Derek Bartram17-Aug-09 6:17 
GeneralRe: Thanks for this C# only survey Pin
Netblue17-Aug-09 7:36
Netblue17-Aug-09 7:36 
GeneralNever!!! PinPopular
Great Crested Dave16-Aug-09 20:43
Great Crested Dave16-Aug-09 20:43 
GeneralRe: Never!!! Pin
Member 448708317-Aug-09 1:01
Member 448708317-Aug-09 1:01 
GeneralRe: Never!!! Pin
louthy17-Aug-09 4:33
louthy17-Aug-09 4:33 
The benefits are that you can work with anonymous types. It's pretty obvious. When it comes to using Linq you can create result-sets with just the values you want, rather than an entire entity:

<br />
var list = from person in db.Person<br />
           where person.Dob < DateTime.Now.AddYears(-18)<br />
           select new<br />
           {<br />
               person.PersonId,<br />
               person.Name,<br />
               person.Surname<br />
           };<br />


Which will clearly make queries faster, and communication to SQL quicker (less data to bring back).

Once you have an anonymous type returned from a query, then iterating it thus makes sense:

<br />
foreach(var item in list)<br />
{<br />
   Console.WriteLine(item.Name);<br />
   Console.WriteLine(item.Surname);<br />
}<br />


Vars are local to the method's scope anyway, so if you don't know what the variable is then your method is far too complex and you should refactor.

I'm all for them. The 'dynamic' type coming in C# 4.0 is the one to worry about. That should in my opinion only be used for communication to non-typesafe resources (like COM, Javascript etc), and maybe used for dynamic fixup of events, methods and properties in things like ASP.NET, but that's all really.
GeneralRe: Never!!! Pin
PIEBALDconsult17-Aug-09 5:48
mvePIEBALDconsult17-Aug-09 5:48 
GeneralRe: Never!!! Pin
louthy17-Aug-09 6:30
louthy17-Aug-09 6:30 
GeneralRe: Never!!! Pin
keozcigisoft17-Aug-09 6:58
keozcigisoft17-Aug-09 6:58 
GeneralRe: Never!!! Pin
Netblue17-Aug-09 7:42
Netblue17-Aug-09 7:42 
GeneralRe: Never!!! Pin
PIEBALDconsult17-Aug-09 13:11
mvePIEBALDconsult17-Aug-09 13:11 
GeneralRe: Never!!! Pin
keozcigisoft17-Aug-09 17:36
keozcigisoft17-Aug-09 17:36 
GeneralRe: Never!!! Pin
PIEBALDconsult17-Aug-09 18:01
mvePIEBALDconsult17-Aug-09 18:01 
GeneralRe: Never!!! Pin
Kevin McFarlane18-Aug-09 1:13
Kevin McFarlane18-Aug-09 1:13 
GeneralRe: Never!!! Pin
keozcigisoft18-Aug-09 8:03
keozcigisoft18-Aug-09 8:03 
GeneralRe: Never!!! Pin
PIEBALDconsult18-Aug-09 9:06
mvePIEBALDconsult18-Aug-09 9:06 
GeneralRe: Never!!! [modified] Pin
louthy19-Aug-09 4:50
louthy19-Aug-09 4:50 
GeneralRe: Never!!! Pin
sucram19-Aug-09 20:45
sucram19-Aug-09 20:45 
GeneralNever Pin
Fahad Sadah16-Aug-09 20:37
Fahad Sadah16-Aug-09 20:37 
GeneralRe: Never Pin
Member 448708317-Aug-09 0:58
Member 448708317-Aug-09 0:58 
GeneralRe: Never Pin
Randall Woodman17-Aug-09 3:48
Randall Woodman17-Aug-09 3:48 
GeneralRe: Never Pin
CDMTJX17-Aug-09 4:25
CDMTJX17-Aug-09 4:25 
GeneralRe: Never Pin
louthy17-Aug-09 4:34
louthy17-Aug-09 4:34 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.