Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ASP.NET CodeFile, CodeBehind and Inherits

My confusion is not new here or arround the web, yet, i have some questions for which i did not find answers anywhere:

The first question is:

Why is Inherits necessary on CodeFile and not on CodeBehind?

I read: http://msdn.microsoft.com/en-us/library/vstudio/ms178138(v=vs.100).aspx and some more pages, and i understand that CodeFile is for source code and for compilation on the fly while the other is for an assembly. This raised me another question:

Why do everyone say that CodeBehind must be an assembly if i find File.aspx.cs everywhere including in a test project i have and it works like a charm? Is this a compiled assembly?

But, as of the first question, and based on the url i supplied, i might understand, why the Inherits is necessary. I assume the compiler must know what is the name of the partial class to compile later. Makes sense. Yet, shouldn't it be necessary on CodeBehind as well? If we are going to merge the partial classes, i suppose i should give the name of the one i want to merge. I even tried adding another partial class to the .cs file and it compiled/ran well.

Am I missing something here?

I also read that CodeBehind is not used anymore and it's CodeFile, the new one.

Any .NET guru to help me?

Thank you all in advance.

UPDATED:

I tried to implement events using no Inherits on CodeBehind. It didn't work. This makes more sense. But, it doesn't complain on compilation, while CodeFile does. Is there any reason for this?

like image 899
BrunoMCBraga Avatar asked Feb 17 '14 22:02

BrunoMCBraga


Video Answer


1 Answers

Inherits property carry the class name which written inside the code behind file. you can have multiple classes in same code behind file and inherit in two different .aspx file

like image 152
Vijayakumar Avatar answered Nov 01 '22 12:11

Vijayakumar