Life Cycle and Events : comparison between ASP.NET and ATL Server

M

meng

i have recently been interested in exploring ATL server. i have been
doing development on asp.net and server controls the past 1 year or
so.
in ASP.NET, the Page and ALL its contained controls get a chance to
handle an event collectively, such as Load, onPreRender() and
RenderContents().

i have read the book:

ATL Server: High Performance C++ on .NET
by Pranish Kumar, Jasjit Singh Grewal, Bogdan Crivat, Eric Lee

its seems ATL server parsed the srf file and calls the code behind or
handler for each {{tag }} it encounters. these handlers would churned
out the http stream as a replacement over the {{ tag }} much like the
old asp pages. everything seems to be dependent on the location of the
{{ tag }}.

in some way, i felt ATL Server is still lacking in comparison with
ASP.NET and wish it could have such a event infrastructure. of cos, am
also aware of the fact the ATL server design considerations are vastly
different from ASP.NET.


hope to get some views on this.
 
B

Bogdan Crivat [MSFT]

Hello,

ATL Server has actually an event infrastructure.
Examples:
- the loading of the ISAPI DLL calls into the ISAPI class's
GetExtensionVersion
- the initialization of a handler object, per request, is a call to handler
class' ValidateAndExchange
- the rendering phase is a call to HandleRequest
- a child stencil is initialized through InitializeChild and then the
content is rendered in HandleRequest

All these methods can be overriden and can be used for custom purposes

The stencil rendering engine is just a way of handling the "Render Contents"
event (HandleRequest), this can be noticed
in the HandleRequest default implementation in atlstencil.h.
However, ATL Server applications can be built without stencil
rendering support by disabling this option in the New Application wizard

Please post any questions you have on handling various events in ATL Server
--
--
--
This posting is provided "AS IS" with no warranties, and confers no rights.
Please do not send email directly to this alias. It is for newsgroup
purposes only.

thanks,
bogdan
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top