Why generated code in c# uses underscore?
I know this might be a stupid question, but here it goes. 
I always wrote my private members like "privateMember" and I've been reading a lot about naming conventions in C# because I noticed that a lot of the automatic generated code in visual studio use "_variableName" for private members. Everywhere I read, even in Microsoft documents, that you should use "privateMember".
So, my question is, if the good practices says that I should write "privateMember", as I do now, Why the heck visual studio generates classes with private members using underscore (_privateMember) ???

Thanks in advance for the attention.
Why generated code in c# uses underscore?
===

I know this might be a stupid question, but here it goes. 
I always wrote my private members like "privateMember" and I've been reading a lot about naming conventions in C# because I noticed that a lot of the automatic generated code in visual studio use "_variableName" for private members. Everywhere I read, even in Microsoft documents, that you should use "privateMember".
So, my question is, if the good practices says that I should write "privateMember", as I do now, Why the heck visual studio generates classes with private members using underscore (_privateMember) ???

Thanks in advance for the attention.