19
DecC Sharp Var data type and Anonymous Type
var data type was introduced in C# 3.0. var is used to declare implicitly typed local variable means it tells the compiler to figure out the type of the variable at compilation time. A var variable must be initialized at the time of declaration.
Valid var statements
var str = "1"; var num = 0; string s = "string"; var s2 = s; s2 = null; string s3 = null; var s4 = s3;
At compile time, the above var statements are compiled to IL, like this:
string str = "1"; int num = 0; string s2 = s; string s4 = s3;
The compile-time type value of var variable cannot be null but the runtime value can be null.
// invalid var statements var v; //need to initialize var num = null; // can’t be null at compile time
Once var variable is initialized its data type became fixed to the type of the initial data.
// invalid var statements var v2 = "str12"; v2 = 3; // int value can’t be assign to implicitly type string variable v2
Anonymous Types
An anonymous type is a simple class generated by the compiler within IL to store a set of values. var data type and new keyword is used to create an anonymous type.
var emp = new { Name = "Deepak", Address = "Noida", Salary=21000 };
At compile time, the compiler will create an anonymous type, as follows:
class __Anonymous1 { private string name; private string address; int salary; public string Name { get{return name; } set { name=value } } public string Address { get{ return address; } set{ address=value; } } public int Salary { get{ return salary; } set{ salary=value; } } }
The anonymous type is very useful when you want to shape the result in your desired form like this:
var result =from book in Books where book.Price > 200 orderby book.IssueDate descending select new { Name = book.Name, IssueNumber = "#" + book.Issue };
In the above example, I change the name of the “Issue” field of Book table to “IssueNumber” and add # before the value to get the desired output.
Read More Articles Related to csharpSummary
In this article, I try to explain var data type with example. I hope after reading this article you will be able to use this trick in your code. I would like to have feedback from my blog readers. Please post your feedback, question, or comments about this article.
Take our free skill tests to evaluate your skill!

In less than 5 minutes, with our skill test, you can identify your knowledge gaps and strengths.