Click here to Skip to main content
15,886,199 members
Home / Discussions / C#
   

C#

 
GeneralRe: Is it ok NOT to pass fields into the methods in the same class as parameters? Pin
User9874316-Mar-18 3:03
professionalUser9874316-Mar-18 3:03 
GeneralRe: Is it ok NOT to pass fields into the methods in the same class as parameters? Pin
V.16-Mar-18 3:42
professionalV.16-Mar-18 3:42 
Questionan interesting aspect of C# 7 extended Tuple semantics Pin
BillWoodruff20-Feb-18 2:11
professionalBillWoodruff20-Feb-18 2:11 
AnswerRe: an interesting aspect of C# 7 extended Tuple semantics Pin
Richard Deeming20-Feb-18 2:32
mveRichard Deeming20-Feb-18 2:32 
GeneralRe: an interesting aspect of C# 7 extended Tuple semantics Pin
BillWoodruff20-Feb-18 4:23
professionalBillWoodruff20-Feb-18 4:23 
GeneralRe: an interesting aspect of C# 7 extended Tuple semantics Pin
Richard Deeming20-Feb-18 4:29
mveRichard Deeming20-Feb-18 4:29 
GeneralRe: an interesting aspect of C# 7 extended Tuple semantics Pin
BillWoodruff20-Feb-18 6:29
professionalBillWoodruff20-Feb-18 6:29 
GeneralRe: an interesting aspect of C# 7 extended Tuple semantics Pin
Richard Deeming20-Feb-18 6:43
mveRichard Deeming20-Feb-18 6:43 
The property name is just syntactical sugar provided by the compiler. The only time it appears in the compiled code is in the TupleElementNames attribute.

If you were using a compiler that didn't understand that attribute - for example, ASP.NET without the Roslyn NuGet packages installed - you would only have access to the raw ItemN properties.

It's somewhat similar to how LINQ works; the compiler takes the C# code you've written, and transforms it into IL code that the JIT compiler will understand. The JIT compiler doesn't need to know anything about query statements, or extension methods, or even iterator methods.

If you use something like LINQPad[^] to examine the IL, you'll see something like this:
C#
var vtp = VTProp;
Console.WriteLine("S2: {0}", vtp.S2);
MSIL
ldarg.0     
call        UserQuery.get_VTProp
stloc.0     // vtp
ldstr       "S2: {0}"
ldloc.0     // vtp
ldfld       System.ValueTuple<System.String,System.Int32,System.String>.Item3 // <-- NB: "Item3", not "S2".
call        System.Console.WriteLine
C#
ValueTuple<string, int, string> vtp = VTProp;
Console.WriteLine("S2: {0}", vtp.Item3);




"These people looked deep within my soul and assigned me a number based on the order in which I joined."
- Homer


GeneralRe: an interesting aspect of C# 7 extended Tuple semantics Pin
BillWoodruff20-Feb-18 16:17
professionalBillWoodruff20-Feb-18 16:17 
GeneralRe: an interesting aspect of C# 7 extended Tuple semantics Pin
Richard Deeming21-Feb-18 7:50
mveRichard Deeming21-Feb-18 7:50 
GeneralRe: an interesting aspect of C# 7 extended Tuple semantics Pin
BillWoodruff22-Feb-18 4:13
professionalBillWoodruff22-Feb-18 4:13 
GeneralRe: an interesting aspect of C# 7 extended Tuple semantics Pin
Richard Deeming22-Feb-18 7:49
mveRichard Deeming22-Feb-18 7:49 
Questionhow to delete a question? Pin
Member 1368582120-Feb-18 1:27
Member 1368582120-Feb-18 1:27 
AnswerRe: How to make Data Recovery Software using C# Pin
Maciej Los20-Feb-18 3:02
mveMaciej Los20-Feb-18 3:02 
GeneralMessage Closed Pin
20-Feb-18 9:17
Member 1368582120-Feb-18 9:17 
GeneralRe: How to make Data Recovery Software using C# Pin
Richard Andrew x6420-Feb-18 10:04
professionalRichard Andrew x6420-Feb-18 10:04 
GeneralRe: How to make Data Recovery Software using C# Pin
phil.o20-Feb-18 12:49
professionalphil.o20-Feb-18 12:49 
AnswerRe: How to make Data Recovery Software using C# Pin
Gerry Schmitz20-Feb-18 10:45
mveGerry Schmitz20-Feb-18 10:45 
AnswerRe: How to make Data Recovery Software using C# Pin
Dave Kreskowiak20-Feb-18 13:50
mveDave Kreskowiak20-Feb-18 13:50 
AnswerRe: How to make Data Recovery Software using C# Pin
MadMyche22-Feb-18 4:44
professionalMadMyche22-Feb-18 4:44 
QuestionDateTimePicker Override right click events Pin
manju 319-Feb-18 23:36
manju 319-Feb-18 23:36 
AnswerRe: DateTimePicker Override right click events Pin
Ralf Meier20-Feb-18 0:34
mveRalf Meier20-Feb-18 0:34 
QuestionSQL Connection and insertion of data in C# form application Pin
Member 1368376518-Feb-18 1:09
Member 1368376518-Feb-18 1:09 
AnswerRe: SQL Connection and insertion of data in C# form application Pin
Richard MacCutchan18-Feb-18 1:39
mveRichard MacCutchan18-Feb-18 1:39 
AnswerRe: SQL Connection and insertion of data in C# form application Pin
Eddy Vluggen18-Feb-18 3:02
professionalEddy Vluggen18-Feb-18 3:02 

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.