Foreword


The ASP.NET project began in December of 1997, shortly after the release of IIS 4.0. At the time, we had just completed a grueling ship cycle that included a major update of both IIS and ASP, and most of the IIS team was spending some quiet time recuperating from our recent product release. The month immediately following any major software release is often a good time for reflection, and several of us on the IIS/ASP team used the relative calm after shipping IIS 4.0 to look back, discuss, and debate the merits of the product we had just built.

ASP at the time was only 12 months old and was quickly becoming the most popular way to build dynamic Web pages. From an ease-of-use perspective, ASP made a giant leap over anything before it. Developers no longer needed to write complicated ISAPI extensions or awkward CGI programs. Instead, they could author HTML pages and gradually weave dynamic server script functionality into them.

But as we spent time that month looking at the types of applications customers were actually building with ASP, we quickly discovered that while ASP was clearly better than previous server programming products a lot of improvement opportunity remained.

In particular, we found that almost all nontrivial ASP pages quickly evolved into a confusing mixture of HTML and intermingled server code. Instead of being able to consolidate page logic code into a separate section of a page (or even into a separate file), developers were forced by the ASP model to embed chunks of logic and functionality in multiple sections all over the page. One customer we spoke with described his frustration with the pages he had built by describing them (not too affectionately) as spaghetti code.

Compounding the lack of structure within an ASP page was the fact that common page tasks ”such as data presentation, input validation, and round-trip form field state management ”all required explicit coding by the developer. There was no declarative way to enable these features in a page ”you always needed to write code.

Last but not least, ASP lacked good tool support. Specifically, the unstructured intermingling of HTML and code meant that it was impossible to build WYSIWYG page designers, and the lack of declarative functionality support made it hard to encapsulate and automate common tasks with a development tool.

As we progressed in our investigation and conversations with customers, we slowly concluded that we needed to fundamentally reconsider the way developers built dynamic Web applications ”we needed to address all of the issues I just mentioned as well as more common requests and complaints we had in other areas about ASP (lack of Web farm session state support, poor component deployment story, inflexible security model, and so on). In the spring of 1998, three of us from the old IIS team formed a new team to build this product, which is of course now known as ASP.NET.

Key among the innovations in ASP.NET is the ASP.NET page and server control framework. Specifically designed to address the issues with classic ASP, it provides an easy and powerful model for developers to declaratively build rich Web pages that are capable of targeting any client browser or device.

What makes the ASP.NET page framework so powerful is that the set of supported server controls is not fixed to just those built into the core product. Instead, the rich extensibility model of ASP.NET allows developers an almost unlimited number of opportunities to innovate and improve upon the core platform, producing a rich ecosystem of components and collaborative offerings that enables ASP.NET to grow richer and richer over time.

This book provides an excellent roadmap that teaches developers how to unlock the full potential of ASP.NET by leveraging and building rich server controls. The book begins with a detailed look at the ASP.NET page programming model and architecture and then expertly walks through the nuts and bolts of building real-world ASP.NET server controls. It is a must have for all serious ASP.NET component developers.

Scott Guthrie

Product Unit Manager

ASP.NET Product Team

Redmond, Washington



Developing Microsoft ASP. NET Server Controls and Components
Developing Microsoft ASP.NET Server Controls and Components (Pro-Developer)
ISBN: 0735615829
EAN: 2147483647
Year: 2005
Pages: 183

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net