#C ورژن های 1.0، 2.0 , 3.0 دارد و ورژن های دات نت هم از 1 تا 3.5 هستند. اینکه هر ورژن دات نت با کدام ورژن #C و VisualStudio منطبق است، در جدول زیر آمده است:
در C#3.0 امکان استفاده از LINQ وجود دارد. به عنوان مثال لیستی با مشخصات زیر داریم:
var filterd = from Product p in products where p.price >100 select p;
اگر در زمان استفاده از یک Synonym ای که در Oracle ایجاد شده است، خطای زیر دریافت شود، مشکل این است که آبجکتی که این Synonym به آن Reference دارد، صحیح تعریف نشده است.
synonym translation is no longer valid
تعریف یک property با نام Name به صورت زیر انجام می شود:
string name;
public string Name
{
get { return name; }
set { name = value}
}
در این حالت، فیلد name که private نیز می باشد ، backing Field نامیده می شود.
اگر قرار است که کنترل خاصی در زمانget و یا Set اعمال نشود، بهتر است از Auto property استفاده شود که این امکان Auto property قبل از .Net 3.0 وجود نداشته است.
با استفاده از Auto Property این کد را می توان به صورت زیر نوشت:
Public string Name { get;set;}
در این صورت خود کامپایلر یک backing Field بدون نام برای این get و set ایجاد می کند.