<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>Expert ASP.NET 2.0 Advanced Application Design</title><link>http://davidhayden.com/blog/dave/category/47.aspx</link><description>&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Expert ASP.NET 2.0 Advanced Application Design by Apress talks about ASP.NET as a distributed application hosting environment. It discusses ASP.NET 2.0 Internals, .NET Middle Tier Solutions, and Data Access Layer.&lt;font&gt;&lt;/P&gt;&lt;br&gt;&lt;br&gt;</description><managingEditor>Dave Hayden</managingEditor><dc:language>en-US</dc:language><generator>.Text Version 0.95.2004.101</generator><item><dc:creator>Dave Hayden</dc:creator><title>Expert ASP.NET 2.0 Advanced Application Design Book Review Conclusion</title><link>http://davidhayden.com/blog/dave/archive/2005/12/21/2637.aspx</link><pubDate>Wed, 21 Dec 2005 13:47:00 GMT</pubDate><guid>http://davidhayden.com/blog/dave/archive/2005/12/21/2637.aspx</guid><description>&lt;P&gt;&lt;IMG src="http://www.davidhayden.com/photos/expertaspnet2.gif" align=right&gt;&lt;A href="http://davidhayden.com/blog/dave/category/47.aspx"&gt;&lt;FONT face=Verdana size=2&gt;Expert ASP.NET 2.0 Advanced Application Design&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; ( &lt;/FONT&gt;&lt;A href="http://www.apress.com/book/bookDisplay.html?bID=10003" target=_blank&gt;&lt;FONT face=Verdana size=2&gt;Apress&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt;, &lt;/FONT&gt;&lt;A href="http://www.amazon.com/gp/product/159059522X/qid=1135189652/sr=2-1/ref=pd_bbs_b_2_1/103-4852370-0632663?s=books&amp;amp;v=glance&amp;amp;n=283155" target=_blank&gt;&lt;FONT face=Verdana size=2&gt;Amazon&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; ) by Dominic Selly, Andrew Troelsen, and Tom Barnaby takes a look at the nonfunctional requirements ( performance, scalability, security, maintainability, etc. ) of your distributed ASP.NET applications and discusses various architectural designs, best practices, and technology choices&amp;nbsp;in each tier of the application.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;The book is a welcoming 450 pages that delivers a lot of punch for it size by jumping right into&amp;nbsp;each topic, focusing on fundamentals, discussing best practices, and&amp;nbsp;highlighting specific&amp;nbsp;new features in ASP.NET 2.0.&amp;nbsp; If you are looking for a book that hits the highlights&amp;nbsp;from an architectural and best practices focus to either help round out your knowledge or see things from another viewpoint, this book is a good fit.&amp;nbsp; If you are looking for more of a reference manual or book on the basics of web development and ASP.NET, this book shouldn't be your first choice.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;The book is broken up into 3 parts, focusing on each tier of a 3-tier ASP.NET application:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;FONT face=Verdana&gt;Part I - ASP.NET 2.0 Internals&lt;/FONT&gt;&lt;/H2&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;This part begins by introducing the various nonfunctional requirements of interest and the various components and technologies within each tier that could play a role in your distributed architecture.&amp;nbsp; It immediately then jumps into the fundamentals of ASP.NET:&amp;nbsp; HttpApplication lifecycle and events, page model and events, a very brief look at HttpModules and HttpHandlers to extend ASP.NET, new compilation options and role of partial classes in code generation, exhaustive look at the ViewState and changes from 1.x, and last a little about client scripting.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;I think most developers will be able to handle the material in this part and appreciate the information.&amp;nbsp; It will either be a good refresher&amp;nbsp;containing specific highlights of ASP.NET 2.0 for the experienced developer, or a good re-introduction to the object-oriented nature of ASP.NET for the new developer.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;FONT face=Verdana&gt;Part II - .NET Middle Tier Solutions&lt;/FONT&gt;&lt;/H2&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;This part starts off with&amp;nbsp;the highlights of the&amp;nbsp;new authentication and authorization security&amp;nbsp;features and controls in ASP.NET 2.0,&amp;nbsp;which&amp;nbsp;is suitable for everyone.&amp;nbsp; It discusses membership, roles, and the new UI controls.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;It&amp;nbsp;then goes into the most advanced topics in the book:&amp;nbsp; SOA and web services, enterprise services, and a preview of Windows Communication Foundation.&amp;nbsp; The discussions on web services&amp;nbsp;are excellent.&amp;nbsp; The other discussions are more than a light read and more suitable for experienced developers.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;FONT face=Verdana&gt;Part III - Data Access Layer&lt;/FONT&gt;&lt;/H2&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Part III&amp;nbsp;provides an excellent overview of ADO.NET with good coverage of best practices.&amp;nbsp; It then&amp;nbsp;introduces the Enterprise Library Data Access Application Block 1.0, which is coming a little late in the game in my opinion.&amp;nbsp; Last, it provides a good introduction to the new System.Transactions namespace.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;FONT face=Verdana&gt;Conclusion&lt;/FONT&gt;&lt;/H2&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Overall, I really enjoyed the book and recommend it when you need more best practices, architectural design guidance,&amp;nbsp;and a real world feel that you often don't get from the reference books.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;My&amp;nbsp;only disappointment was the lack of thorough coverage on state managment and caching.&amp;nbsp; The discussions on viewstate and a bit on output caching is hardly&amp;nbsp;enough for such a book.&amp;nbsp; Rather than make the book longer, the authors could have removed the parts on the Enterprise Library Data Access Application Block 1.0 and declarative data sources ( ObjectDataSource, SqlDataSource, etc.).&amp;nbsp; This is my opinion, however, and others&amp;nbsp;may appreciate the&amp;nbsp;introduction of&amp;nbsp;Enterprise Library&amp;nbsp;DAAB and the declarative data sources.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Source:&amp;nbsp; &lt;/FONT&gt;&lt;A href="http://www.davidhayden.com/"&gt;&lt;FONT face=Verdana size=2&gt;David Hayden&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; ( &lt;/FONT&gt;&lt;A href="http://www.davidhayden.com/"&gt;&lt;FONT face=Verdana size=2&gt;ASP.NET Developer&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; )&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Related Articles:&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2005/12/13/2621.aspx"&gt;&lt;FONT face=Verdana color=#0000ff size=2&gt;Expert ASP.NET 2.0 Advanced Application Design by Apress - Book Review Introduction&lt;/FONT&gt;&lt;/A&gt; 
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2005/12/15/2624.aspx"&gt;&lt;FONT face=Verdana color=#0000ff size=2&gt;Expert ASP.NET 2.0 Advanced Application Design Book Review - Data Access Layer&lt;/FONT&gt;&lt;/A&gt; 
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2005/12/19/2634.aspx"&gt;&lt;FONT face=Verdana color=#0000ff size=2&gt;Expert ASP.NET 2.0 Advanced Application Design Book Review - ASP.NET 2.0 Internals&lt;/FONT&gt;&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;&lt;img src ="http://davidhayden.com/blog/dave/aggbug/2637.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Dave Hayden</dc:creator><title>Expert ASP.NET 2.0 Advanced Application Design Book Review - ASP.NET 2.0 Internals</title><link>http://davidhayden.com/blog/dave/archive/2005/12/19/2634.aspx</link><pubDate>Mon, 19 Dec 2005 18:19:00 GMT</pubDate><guid>http://davidhayden.com/blog/dave/archive/2005/12/19/2634.aspx</guid><description>&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Last night I completed Part 1 of &lt;A href="http://davidhayden.com/blog/dave/category/47.aspx"&gt;Expert ASP.NET 2.0 Advanced Application Design&lt;/A&gt;, called ASP.NET 2.0 Internals.&lt;/FONT&gt;&lt;/P&gt;
&lt;H2&gt;&lt;FONT face=Verdana&gt;ASP.NET 2.0 Internals&lt;/FONT&gt;&lt;/H2&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;This section is about 150 pages long and packed full of really good information on semi-advanced topics in ASP.NET 2.0.&amp;nbsp; It consists of the following 4 chapters discussed below:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;FONT face=Verdana&gt;Chapter 1 - Overview of .NET Application Architecture&lt;/FONT&gt;&lt;/H2&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;This chapter briefly discusses different application architectures for ASP.NET applications.&amp;nbsp; If you are more of a developer / coder and not much into architectural design, this chapter&amp;nbsp;may bore you a bit with discussions of architectural components / services and various nonfunctional requirements ( performance, scalability, etc.).&amp;nbsp; Don't let this chapter scare you, however, if you are more into the nuts and bolts, because the next 3 chapters will&amp;nbsp;provide&amp;nbsp;more&amp;nbsp;technical information and code.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;FONT face=Verdana&gt;Chapter 2 - The ASP.NET Request Pipeline&lt;/FONT&gt;&lt;/H2&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;A short but effective chapter introducing the application lifecycle, events and the good 'ol Global.asax file.&amp;nbsp; It digs further by&amp;nbsp;describing how to&amp;nbsp;inherit from HttpApplication and plug into application events by writing HttpModules.&amp;nbsp; Last, it discusses the role of HttpHandlers in ASP.NET and how to create one and configure IIS to use it.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;FONT face=Verdana&gt;Chapter 3 - Page Object Internals&lt;/FONT&gt;&lt;/H2&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Chapter 3&amp;nbsp;starts with an introduction into the new compilation models and the use of partial classes used by Visual Studio 2005 for code generation.&amp;nbsp; It then discusses the control tree of a webform and the various events fired by the page and how and why you might use them in your applications.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;FONT face=Verdana&gt;Chapter 4 - ViewState and Scripting&lt;/FONT&gt;&lt;/H2&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;This chapter discusses the role of ViewState in your applications and new features in ASP.NET 2.0 that overcome problems in ASP.NET 1.x&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Cross-Page Postbacks&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Optimized Serialization&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Control State&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Post-Cache Substitution&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;as well as using LosFormatter to save and load the viewstate to a database as opposed to a hidden field on the page.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;The part on scripting discusses the various ways&amp;nbsp;of registering client script as well as the use of Out-of-Band Callbacks.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;FONT face=Verdana&gt;Summary&lt;/FONT&gt;&lt;/H2&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Most intermediate to advanced developers will&amp;nbsp;be familiar with the information presented and think of it as a good re-introduction / refresher to the topics.&amp;nbsp; New ASP.NET developers will learn a ton of good internal information in only a few pages that will round out their knowledge quite nicely.&amp;nbsp; HttpModules are a must learn in my opinion as well as the lifecycle and event model for both HttpApplication and pages.&amp;nbsp; The part on ViewState provides an excellent comparison-contrast of the ViewState related technologies in 1.x and how they are improved in 2.0.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;FONT face=Verdana&gt;Expert ASP.NET 2.0 Advanced Application Design Related Posts:&lt;/FONT&gt;&lt;/H2&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2005/12/13/2621.aspx"&gt;&lt;FONT face=Verdana color=#0000ff size=2&gt;Expert ASP.NET 2.0 Advanced Application Design by Apress - Book Review Introduction&lt;/FONT&gt;&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2005/12/15/2624.aspx"&gt;&lt;FONT face=Verdana color=#0000ff size=2&gt;Expert ASP.NET 2.0 Advanced Application Design Book Review - Data Access Layer&lt;/FONT&gt;&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2005/07/02/1881.aspx"&gt;&lt;FONT face=Verdana color=#0000ff size=2&gt;Developing High Performance and Scalable ASP.NET Websites&lt;/FONT&gt;&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2005/07/03/1882.aspx"&gt;&lt;FONT face=Verdana color=#0000ff size=2&gt;Avoid Chatty Interfaces Between the Tiers in Your ASP.NET Web Application&lt;/FONT&gt;&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2005/07/17/2396.aspx"&gt;&lt;FONT face=Verdana color=#0000ff size=2&gt;ASP.NET Page Profiling - Page Tracing - High Performance and Scalable ASP.NET Websites Made Easy&lt;/FONT&gt;&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2005/07/22/2401.aspx"&gt;&lt;FONT face=Verdana color=#0000ff size=2&gt;Web Applications: N-Tier vs. N-Layer - Benefits and Trade-Offs&lt;/FONT&gt;&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2005/07/24/2403.aspx"&gt;&lt;FONT face=Verdana color=#0000ff size=2&gt;Query Analyzer - Sql Server Database Indexes and Execution Plans&lt;/FONT&gt;&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2005/08/24/2439.aspx"&gt;&lt;FONT face=Verdana color=#0000ff size=2&gt;Website HTTP Performance Tuning using Fiddler for High Speed Websites&lt;/FONT&gt;&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2005/10/05/2503.aspx"&gt;&lt;FONT face=Verdana color=#0000ff size=2&gt;SQL Server - Optimistic Concurrency Database Updating - Pessimistic Concurrency - High Performance ASP.NET Websites&lt;/FONT&gt;&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Source: &lt;A href="http://www.davidhayden.com/"&gt;David Hayden&lt;/A&gt; ( &lt;A href="http://www.davidhayden.com/"&gt;.NET Developer&lt;/A&gt; )&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;&lt;img src ="http://davidhayden.com/blog/dave/aggbug/2634.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Dave Hayden</dc:creator><title>Expert ASP.NET 2.0 Advanced Application Design Book Review - Data Access Layer</title><link>http://davidhayden.com/blog/dave/archive/2005/12/15/2624.aspx</link><pubDate>Thu, 15 Dec 2005 12:50:00 GMT</pubDate><guid>http://davidhayden.com/blog/dave/archive/2005/12/15/2624.aspx</guid><description>&lt;P&gt;&lt;FONT face=Verdana size=2&gt;As mentioned in&amp;nbsp;an earlier post, &lt;/FONT&gt;&lt;A id=viewpost.ascx_TitleUrl HREF="/blog/dave/archive/2005/12/13/2621.aspx"&gt;&lt;FONT face=Verdana color=#0000ff size=2&gt;Expert ASP.NET 2.0 Advanced Application Design by Apress - Book Review Introduction&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt;, &lt;A href="http://davidhayden.com/blog/dave/category/47.aspx"&gt;Expert ASP.NET 2.0 Advanced Application Design&lt;/A&gt; showed up on my doorstep the other day so&amp;nbsp;I thought I would review the 3 different sections&amp;nbsp;in the book.&amp;nbsp; Because I have been talking a lot about &lt;A href="http://davidhayden.com/blog/dave/category/26.aspx?Show=All"&gt;ADO.NET 2.0&lt;/A&gt; recently, I decided to jump to the last part of the book, &lt;STRONG&gt;Data Access Layer&lt;/STRONG&gt;, first and then go back to the other sections later.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;FONT face=Verdana&gt;Part 3 - Data Access Layer&lt;/FONT&gt;&lt;/H2&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Part 3 of &lt;STRONG&gt;Expert ASP.NET 2.0 Advanced Application Design&lt;/STRONG&gt;&amp;nbsp;discusses the &lt;STRONG&gt;Data Access Layer&lt;/STRONG&gt; in your ASP.NET distributed applications.&amp;nbsp; It is separated into 3 different chapters, which I have described below.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;FONT face=Verdana&gt;Chapter 10 - Managed Providers of Data Access&lt;/FONT&gt;&lt;/H2&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;This chapter&amp;nbsp;provides an overview of&amp;nbsp;the following:&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Rational for choosing a DataReader or DataSet in your applications.&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2005/11/17/2572.aspx"&gt;Encrypting connection strings&lt;/A&gt;&amp;nbsp;and real-world &lt;A href="http://davidhayden.com/blog/dave/archive/2005/11/03/2554.aspx"&gt;connection pooling&lt;/A&gt;.&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Use of Stored Procedures as a means for better performance and security.&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Reasons for choosing ExecuteReader, ExecuteNonQuery, and ExecuteScalar.&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Implications of using Dynamic Sql, Parameterized Queries, and string concatentation&amp;nbsp;in queries.&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2005/10/30/2550.aspx"&gt;Managed Provider Factories in ADO.NET 2.0&lt;/A&gt;&amp;nbsp;and writing database agnostic code in your applications.&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Usual methods of &lt;A href="http://davidhayden.com/blog/dave/archive/2005/10/05/2503.aspx"&gt;optimistic concurrency in SQL Server&lt;/A&gt;.&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;This chapter&amp;nbsp;is extremely well written, providing a nice overview of ADO.NET that focuses on best practices and the rational for choosing one solution / technology over another in your applications.&amp;nbsp; It highlights the &amp;#8220;important&amp;#8220; improvements in ADO.NET 2.0 that mean something to the intermediate and advanced developer.&amp;nbsp; It packs a lot of best practices and the rational for such practices in&amp;nbsp;a few pages by not wasting a lot of time and space&amp;nbsp;on trivial discussions and reference material.&amp;nbsp; I can't recommend this chapter enough.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;FONT face=Verdana&gt;Chapter 11 Data Access Layer Services&lt;/FONT&gt;&lt;/H2&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;This chapter&amp;nbsp;provides an overview of the following&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Declarative Data Sources ( &lt;A href="http://davidhayden.com/blog/dave/archive/2005/05/23/1046.aspx"&gt;SqlDataSource&lt;/A&gt;, &lt;A href="http://davidhayden.com/blog/dave/archive/2005/11/16/2570.aspx"&gt;ObjectDataSource&lt;/A&gt; )&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;SQL Cache Dependencies&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2005/03/11/864.aspx"&gt;Microsoft Enterprise Library Data Access Application Block&lt;/A&gt; 1.0&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Developer's survey of SQL Server 2005 CLR Integration, Service Broker, XML&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;This chapter&amp;nbsp;is more of a hodge podge of ideas.&amp;nbsp; I, personally, could have done without the discussion of data sources and the &amp;#8220;old&amp;#8220; Enterprise Library Data Access Application Block, but others may enjoy the introduction.&amp;nbsp; The sections on SQL Cache Dependencies&amp;nbsp;is excellent, and the SQL&amp;nbsp; Server 2005&amp;nbsp;is indeed a survey of the topics just to familiarize yourself with SQL Server 2005.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;FONT face=Verdana&gt;Chapter 12 - Transactions&lt;/FONT&gt;&lt;/H2&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;This chapter&amp;nbsp;provides an overview of the following&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Transactions in 1.x &lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2005/12/09/2615.aspx"&gt;System.Transactions&lt;/A&gt; and the Lightweight Transaction Manager&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;This chapter&amp;nbsp;is only about 15 pages long, but provides a good introduction to the new System.Transactions namespace in ADO.NET 2.0.&amp;nbsp; The new transaction support in ADO.NET 2.0 is a must read for developers inolved with distributed transactions.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;FONT face=Verdana&gt;Conclusion&lt;/FONT&gt;&lt;/H2&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;A href="http://davidhayden.com/blog/dave/category/47.aspx"&gt;Expert ASP.NET 2.0 Advanced Application Design&lt;/A&gt; Part 3, &lt;STRONG&gt;Data Access Layer&lt;/STRONG&gt;, provides a solid overview of using ADO.NET in your data access layer.&amp;nbsp; The writing style is good, and aside from Chapter 11 which is more of a hodge podge of ideas, the chapters flow very well.&amp;nbsp; I enjoyed the focus on best practices and real-world ideas.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;One very important thing missing is a chapter putting all of these ideas together to create a data access layer.&amp;nbsp; The book introduces all the &lt;U&gt;parts&lt;/U&gt; of a data access layer but misses out on the opportunity to bring these parts together into an actual data access layer that demonstrates them working together in harmony.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Source:&amp;nbsp; &lt;A href="http://www.davidhayden.com/"&gt;David Hayden&lt;/A&gt; ( &lt;A href="http://www.davidhayden.com/"&gt;.NET Developer&lt;/A&gt; )&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;&lt;img src ="http://davidhayden.com/blog/dave/aggbug/2624.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Dave Hayden</dc:creator><title>Expert ASP.NET 2.0 Advanced Application Design by Apress - Book Review Introduction</title><link>http://davidhayden.com/blog/dave/archive/2005/12/13/2621.aspx</link><pubDate>Tue, 13 Dec 2005 13:33:00 GMT</pubDate><guid>http://davidhayden.com/blog/dave/archive/2005/12/13/2621.aspx</guid><description>&lt;P&gt;&lt;A href="http://davidhayden.com/blog/dave/category/47.aspx"&gt;&lt;FONT face=Verdana size=2&gt;Expert ASP.NET 2.0 Advanced Application Design&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; by Apress ( &lt;/FONT&gt;&lt;A href="http://www.apress.com/book/bookDisplay.html?bID=10003" target=_blank&gt;&lt;FONT face=Verdana size=2&gt;Apress&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt;, &lt;/FONT&gt;&lt;A href="http://www.amazon.com/gp/product/159059522X/qid=1134498242/sr=2-1/ref=pd_bbs_b_2_1/002-5684821-5060029?s=books&amp;v=glance&amp;n=283155" target=_blank&gt;&lt;FONT face=Verdana size=2&gt;Amazon&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; ) showed up on my doorstep yesterday.  Any book that manages to work in both &amp;#8220;Expert&amp;#8221; and &amp;#8220;Advanced&amp;#8221; in the title deserves a look ;)&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;It is a nicely-sized 450 pages with the following 12 chapters:&lt;/FONT&gt;&lt;/P&gt;
&lt;H2&gt;&lt;FONT face=Verdana&gt;Part 1. - ASP.NET 2.0 Internals&lt;/FONT&gt;&lt;/H2&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Overview of .NET Application Architecture&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;The ASP.NET Request Pipeline&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Page Object Internals&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;ViewState and Scripting&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;H2&gt;&lt;FONT face=Verdana&gt;Part 2 - .NET Middle Tier Solutions&lt;/FONT&gt;&lt;/H2&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;.NET 2.0 Security&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;SOA in .NET: Web Services&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Enterprise Services&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Hosting and Communications&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Windows Communication Foundation&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;H2&gt;&lt;FONT face=Verdana&gt;Part 3 - Data Access Layer&lt;/FONT&gt;&lt;/H2&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Managed Providers of Data Access&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Data Access Layer Services&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT face=Verdana size=2&gt;Transactions&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt; &lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;I read part 3 last night, &lt;STRONG&gt;Data Access Layer&lt;/STRONG&gt;, since I have been recently talking about changes in .NET 2.0 with respect to data access and transactions:&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2005/10/30/2550.aspx"&gt;&lt;FONT face=Verdana size=2&gt;.NET 2.0 Provider Model Fundamentals - Writing Database Agnostic Code&lt;/FONT&gt;&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2005/12/09/2615.aspx"&gt;&lt;FONT face=Verdana size=2&gt;System.Transactions&lt;/FONT&gt;&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://davidhayden.com/blog/dave/archive/2005/10/05/2503.aspx"&gt;&lt;FONT face=Verdana size=2&gt;SQL Server Optimistic Concurrency Options&lt;/FONT&gt;&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt; &lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Part 3 also mentions the &lt;A href="http://davidhayden.com/blog/dave/archive/2005/03/11/864.aspx"&gt;Enterprise Library Data Access Application Block&lt;/A&gt; for data access and transaction management.  It is a brief introduction, maybe about 10 pages, but it is still interesting to see coverage of it in an advanced &lt;A href="http://davidhayden.com/blog/dave/category/25.aspx?Show=All"&gt;ASP.NET 2.0&lt;/A&gt; book.  Unfortunately, it has to talk about the .NET 1.1 version because the .NET 2.0 Version has yet to be released.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;During the next week I will provide a review of each Part ( 1, 2, and 3).  I will start my review with Part 3, &lt;STRONG&gt;Data Access Layer&lt;/STRONG&gt;, since I already read it.  There will be a bit of overlap from my recent posts, but a good reinforcement of best practices never hurt anyone, especially ME!&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana&gt;&lt;FONT size=2&gt;&lt;STRONG&gt;Posted by&lt;/STRONG&gt; &lt;/FONT&gt;&lt;/FONT&gt;&lt;A href="http://www.davidhayden.com/"&gt;&lt;FONT face=Verdana size=2&gt;David Hayden&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; ( &lt;/FONT&gt;&lt;A href="http://www.davidhayden.com/"&gt;&lt;FONT face=Verdana size=2&gt;Florida .NET Developer&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; )&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana size=2&gt;&lt;/FONT&gt; &lt;/P&gt;&lt;img src ="http://davidhayden.com/blog/dave/aggbug/2621.aspx" width = "1" height = "1" /&gt;</description></item></channel></rss>