Directives specify settings used by the page and user-control compilers when they process ASP.NET Web Forms page (.aspx) and user control (.ascx) files.
ASP.NET treats any directive block (<%@ %>) that does not contain an explicit directive name as an @ Page directive (for a page) or as an @ Control directive (for a user control).
For syntax information and descriptions of the attributes available for each directive, use the links that follow.
Defines page-specific attributes used by the ASP.NET page parser and compiler. Can only be included in .aspx files.
Defines control-specific attributes used by the ASP.NET page parser and compiler. Can only be included in .ascx files (user controls).
Declaratively links an assembly to the current page or user control.
Declaratively indicates that a page or user control implements a specified .NET Framework interface.
Explicitly imports a namespace into a page or user control.
Declaratively controls the output caching policies of a page or user control.
Declaratively links a page or user control to the current page or user control.
Associates aliases with namespaces and class names, which allows user controls and custom server controls to be rendered when included in a requested page or user control.
Reference : Dilip Kumar Jena ( https://mstechexplore.wordpress.com )