MSDN Magazine: Cutting Edge
Cutting Edge: Pros and Cons of Data Transfer Objects
Dino Esposito - August 2009
After a brief refresher on procedural and object based patterns for organizing the business logic layer, the author focuses on data transfer objects and the impact they have on the development of the software project.
Cutting Edge: Comparing Web Forms And ASP.NET MVC
Dino Esposito - July 2009
In this month's column, we’ll explore the pros and cons of both ASP.NET Web Forms and ASP.NET MVC.
Cutting Edge: Go Beyond HTML Forms With AJAX
Dino Esposito - June 2009
This month we examine forms in the context of AJAX applications and look at various approaches to implementing features such as auto-saving, just-in-time validation, and submission throttling.
Cutting Edge: Build Rich User Interfaces with jQuery
Dino Esposito - May 2009
In this month's installment we build modal and modeless dialog boxes in jQuery and explain how to post data from them to the Web server.
Cutting Edge: Explore Rich Client Scripting With jQuery, Part 2
Dino Esposito - April 2009
Cutting Edge: Explore Rich Client Scripting With jQuery, Part 1
Dino Esposito - March 2009
Thanks to selectors and function chaining, jQuery allows you to write compact, cross-browser code.
Cutting Edge: Managing Dynamic Content Delivery In Silverlight, Part 2
Dino Esposito - February 2009
This month Dino continues his look at managing dynamic Silverlight content by discussing caching and isolated storage.
Cutting Edge: Managing Dynamic Content Delivery In Silverlight, Part 1
Dino Esposito - January 2009
This month Dino tackles the problem of large download size for Silverlight applications, explaining when to use streaming, when to divide the download, and other techniques for better performance over the wire.
Cutting Edge: ASP.NET Presentation Patterns
Dino Esposito - December 2008
Choosing the right design pattern for your ASP.NET Web application can help you achieve the separation of concerns between your presentation layer and the layers beneath it.
Cutting Edge: Browser Interoperability In Silverlight 2
Dino Esposito - November 2008
This month Dino Esposito explains how the browser interoperability layer in Silverlight addresses a number of your Silverlight / Web page interaction needs.
Cutting Edge: Code reuse in WPF and Silverlight 2.
Dino Esposito - October 2008
There’s a strong similarity between Web-based Silverlight 2 applications and desktop WPF applications. Enabling easy code reuse between the two is Dino’s focus here.
Cutting Edge: Building A Secure AJAX Service Layer
Dino Esposito - September 2008
This month Dino builds a service layer that authenticates users of Silverlight 2 and ASP.NET AJAX services to prevent illegal access to sensitive back-end services.
Cutting Edge: Programming AJAX with ASP.NET Partial Rendering
Dino Esposito - August 2008
Dino Esposito compares the use of AJAX patterns and DOM manipulations to the use of the ASP.NET partial rendering engine.
Cutting Edge: The HTML Message Pattern
Dino Esposito - July 2008
In this installment, the author provides an enhanced implementation of the BST pattern and compares it to HTM solutions.
Cutting Edge: ASP.NET AJAX and Client-side Templates.
Dino Esposito - June 2008
AJAX is meant to go beyond mere partial page rendering. Find out where Dino Esposito thinks dynamic pages are headed in the future with ASP.NET AJAX.
Cutting Edge: Single-page Interface and AJAX Patterns
Dino Esposito - May 2008
This month we begin a look at the Single Page Interface (SPI) model and some design patterns for designing AJAX applications.
Cutting Edge: ListView Tips and Tricks
Dino Esposito - April 2008
This month, use nested ListView controls to create hierarchical views of data and extend the eventing model of the ListView by deriving a custom ListView class.
Cutting Edge: Modal Dialog Boxes with AJAX
Dino Esposito - Launch 2008
This month Dino Esposito shows you how to get Windows-style modal dialog boxes for your Web applications thanks to the Ajax Control Toolkit and some clever coding.
Cutting Edge: Customize Controls with AJAX Extenders, Part 2
Dino Esposito - February 2008
This month Dino looks at AJAX control extenders again, adding more advanced features including masked editing and autocompletion.
Cutting Edge: Customize Controls with AJAX Extenders
Dino Esposito - January 2008
AJAX Extenders extend the behavior and features of ordinary Web controls so you can reduce postbacks and control input even better than with AJAX alone.
Cutting Edge: Inside the Microsoft AJAX Library
Dino Esposito - December 2007
Cutting Edge: Managing the User Experience in AJAX
Dino Esposito - November 2007
This month Dino takes a look at limitations and UI issues in Partial Rendering AJAX pages and techniques for managing the UI.
Cutting Edge: AJAX application architecture, Part 2
Dino Esposito - October 2007
The second of this two-part series delves into the script services programming model, which is useful if you're looking for a full paradigm shift in building AJAX applications.
Cutting Edge: AJAX Application Architecture, Part 1
Dino Esposito - September 2007
In the first of a two-part column, Dino explains AJAX from an architectural standpoint to help developers, architects, designers, and administrators better understand the issues that affect their sites.
Cutting Edge: Canceling Server Tasks with ASP.NET AJAX
Dino Esposito - August 2007
This month Dino explains how to remotely cancel tasks running on the server using ASP.NET AJAX.
Cutting Edge: Context-Sensitive Feedback with AJAX
Dino Esposito - July 2007
Beyond progress bars: talking to server-side apps with ASP.NET AJAX.
Cutting Edge: Transactional Workflows
Dino Esposito - June 2007
When modeling business logic, workflows inevitably represent transactional tasks, so you need to know how to code transactional semantics in the Windows Workflow Foundation.
Cutting Edge: Subclassing and Overriding ASP.NET Pages—Part II
Dino Esposito - May 2007
Cutting Edge: Subclassing and Overriding ASP.NET Pages—Part I
Dino Esposito - April 2007
There are a number of techniques that allow you to modify a running ASP.NET page without touching its source code. Dino discusses some this month.
Cutting Edge: Validating ASP.NET Query Strings
Dino Esposito - March 2007
Cutting Edge: Perspectives on ASP.NET AJAX
Dino Esposito - February 2007
AJAX allows you to build rich browser applications using powerful combinations of existing client-side Web technologies. This month Dino delves into AJAX
Cutting Edge: The Server Side of ASP.NET Pages
Dino Esposito - January 2007
Where are the files generated by ASP.NET stored and how are they used to serve page requests? This month Cutting Edge explains.
Cutting Edge: The Client Side of ASP.NET Pages
Dino Esposito - December 2006
This month Dino Esposito dissects the client-side source code generated by ASP.NET pages.
Cutting Edge: A Tour of Windows Workflow Activities
Dino Esposito - November 2006
Windows Workflow Foundation supports virtually any scenario where human opera¬tors are involved. Learn how to use it to tame your workflows.
Cutting Edge: Simplify Task Progress with ASP.NET "Atlas"
Dino Esposito - October 2006
Dino Esposito rewrites his task progress bar with the help of ASP.NET “Atlas.”
Cutting Edge: Reporting Task Progress With ASP.NET 2.0
Dino Esposito - September 2006
The progress bar is great for keeping users informed about the progress of a task. Unfortunately, there’s no progress bar element built into ASP.NET, so Dino Esposito solves that problem with his ProgressPanel control.
Cutting Edge: All About Enums
Dino Esposito - August 2006
Dino Esposito reviews the basics of enumeration types and their implementation in the Microsoft .NET Framework.
Cutting Edge: Context-Sensitive PictureBox Controls
Dino Esposito - July 2006
Great ideas are timeless. A long time ago in Microsoft Systems Journal Paul DiLascia demonstrated a neat trick to display context-sensitive tooltips floating over pictures. As the user moved the mouse over the picture, the tooltip control updated its text to reflect the name of the pointed figure.
Cutting Edge: A Provider-Based Service for ASP.NET Tracing
Dino Esposito - June 2006
When it comes to catching programming errors, the debugger is a developer's best friend. ASP. NET tracing, however, is a nice complement to the debugger and shouldn't be overlooked. It enables your ASP.
Cutting Edge: Extending the GridView Control
Dino Esposito - May 2006
Welcome to my100th consecutive installment of Cutting Edge. I've been writing this column since January 1998 in Microsoft Internet Developer. Looking back over the past eight years, I realize that I've touched on almost every subject in the Windows® SDK and the Microsoft® .
Cutting Edge: Windows Workflow Foundation, Part 2
Dino Esposito - April 2006
In last month's column, I presented a helpdesk workflow sample that focused on Windows® Forms client applications. This month I'll discuss ASP. NET workflow applications and the ability to expose a workflow as a Web service and invoke a Web service from a workflow.
Cutting Edge: Windows Workflow Foundation
Dino Esposito - March 2006
In the January 2006 issue, Don Box and Dharma Shukla introduced Windows® Workflow Foundation and discussed the overall architecture of the framework and its constituent components (see WinFX Workflow: Simplify Development With The Declarative Model Of Windows Workflow Foundation).
Cutting Edge: Build Providers for Windows Forms
Dino Esposito - February 2006
In ASP. NET and Windows Forms projects, some file types are treated differently than others. For example, ASPX and ASCX files are dynamically parsed and compiled to an assembly on the fly. The contents of an XML Schema Definition (XSD) file are used to create a new, strongly typed DataSet-based object at design time.
Cutting Edge: Custom Data Control Fields
Dino Esposito - January 2006
In ASP. NET 2. 0, the GridView and DetailsView controls are designed to work together. They don't merely provide complementary services, they also share a number of helper classes and components. The output of the GridView control consists of a sequence of rows, each with a fixed number of columns.
Cutting Edge: Flexible Custom Data Views
Dino Esposito - December 2005
ASP. NET 1. x introduced some powerful and useful data-bound controls. However, none were designed specifically to manage the view of a single record. When you build master/detail views, you need to display the contents of a single record.
Cutting Edge: A Quick Tour of Themes in ASP.NET 2.0
Dino Esposito - November 2005
It's much easier to build a rich user interface into your Web application in ASP. NET 2. 0 than it was in previous versions. Master Pages let you build pages based on existing templates of markup and code.
Cutting Edge: Personalization and User Profiles in ASP.NET 2.0
Dino Esposito - October 2005
Personalization is growing to be more and more of an essential ingredient in many types of Web apps, including portals and shopping sites. Without it, it's quite difficult to serve your customers efficiently.
Cutting Edge: ASP.NET Forms
Dino Esposito - September 2005
Forms are an essential piece of ASP. NET—the ASP. NET Web programming model itself wouldn't be possible without forms. The use of forms is not constrained in pure HTML, but it is subject to some restrictions in ASP.
Cutting Edge: DataSets vs. Collections
Dino Esposito - August 2005
In software, five years is like a geological era. Five years ago, the Microsoft® . NET Framework had just been announced. Since then, the DataSet has emerged as the key object for performing a variety of data-related tasks in .
Cutting Edge: DHTML-Enabled ASP.NET Controls
Dino Esposito - July 2005
In the past, I've covered some core aspects of the interaction between DHTML behaviors, the browser, and ASP. NET runtime (see Cutting Edge: Extend the ASP. NET DataGrid with Client-side Behaviors and Cutting Edge: Moving DataGrid Rows Up and Down).
Cutting Edge: Data Repeater Controls in ASP.NET
Dino Esposito - June 2005
The ASP. NET Repeater is a basic container control that allows you to create custom lists from any data available to the page. It's a handy control, especially since most ASP. NET pages that display data need to repeat the same kinds of data over and over.
Cutting Edge: Collections and Data Binding
Dino Esposito - May 2005
When it's time to design the Data Access Layer (DAL) of your distributed Microsoft® . NET Framework-based app, one of the key decisions you'll make is how you'll pass data to and from methods of DAL classes.
Cutting Edge: A New Grid Control in Windows Forms
Dino Esposito - April 2005
Grid controls are essential in many of today's apps. Until now, though, most developers using Visual Basic® have had to buy third-party components to get an effective, easy to use grid component. The Windows® Forms DataGrid turned out to lack too many features for the average developer.
Cutting Edge: Moving DataGrid Rows Up and Down
Dino Esposito - March 2005
Imagine opening your Inbox one morning and finding a message that reads "Dear Mr. DataGrid, I urgently need an ASP.NET DataGrid that lets my users move rows on the client. You're my last hope. Will you please help me?"
Cutting Edge: Adding a Context Menu to ASP.NET Controls
Dino Esposito - February 2005
Although the context menu is a common element of most desktop applications, it is still fairly uncommon in Web application names because it doesn't map well to a server-based technology like ASP. NET.
Cutting Edge: Custom Script Callbacks in ASP.NET
Dino Esposito - January 2005
ASP. NET client callbacks represent a neat and elegant way to execute server-side code without posting and refreshing the current page. I discussed ASP. NET callbacks in the August and December 2004 installments of Cutting Edge, considering them from the perspective of rendered pages making background callbacks to the server, sending input data to the relevant page, and receiving a response.
Cutting Edge: Implications of Script Callbacks in ASP.NET
Dino Esposito - December 2004
Script callbacks in ASP. NET 2. 0 is a feature whose time has come. Script callbacks can significantly speed up an application by limiting server postbacks. They also allow you to execute small portions of server-side code without having to manage the view state for reading or writing.
Cutting Edge: The ASP.NET 2.0 Wizard Control
Dino Esposito - November 2004
ASP.NET has a lot to offer to both the low-level programmer willing to control every little step of the code and the busiest of developers who needs to point-and-click his way through Web app development using just a few existing components.
Cutting Edge: Binary Serialization of DataSets
Dino Esposito - October 2004
The ADO. NET DataSet object plays an essential role in most of today's distributed, multitiered applications. Instances of the DataSet class are used to move data across the tiers and to exchange data with external services.
Cutting Edge: Design Smarter Tracing for ASP.NET Pages
Dino Esposito - September 2004
Tracing is important to the success of your ASP. NET applications. When tracing is enabled for an ASP. NET page, a large chunk of runtime information is appended to the page's output for your perusal.
Cutting Edge: Script Callbacks in ASP.NET
Dino Esposito - August 2004
If you're involved in Web development you may have faced a problem that you couldn't find a good solution for—making client-to-server calls outside the current page. For example, you might want to validate the content of a textbox against data stored on the server asynchronously, without interrupting the continuity of the work or without forcing a full page refresh, which is particularly heavy for UI-rich pages.
Cutting Edge: Implement Custom Cache Dependencies in ASP.NET 1.x
Dino Esposito - July 2004
One of the most compelling improvements that ASP. NET brought to ASP programming was the Cache object. The Cache has some similarities to the Application object and is a container of global data (as opposed to session-specific data) that features a fair number of innovative characteristics.
Cutting Edge: Dress Your Controls for Success with ASP.NET 1.1 Themes, Part 2
Dino Esposito - June 2004
Cutting Edge: Dress Your Controls for Success with ASP.NET 1.1 Themes
Dino Esposito - May 2004
Cutting Edge: Image Generation Service for ASP.NET 1.1
Dino Esposito - April 2004
Cutting Edge: Personalization in ASP.NET 1.1
Dino Esposito - March 2004
Cutting Edge: Owner-Drawing in .NET
Dino Esposito - February 2004
Cutting Edge: Extend the ASP.NET DataGrid with Client-side Behaviors
Dino Esposito - January 2004
Cutting Edge: Custom Design-time Control Features in Visual Studio .NET
Dino Esposito - December 2003
Cutting Edge: Custom Provider Controls
Dino Esposito - November 2003
Cutting Edge: Nested Grids for Hierarchical Data
Dino Esposito - October 2003
Cutting Edge: Managing Your Remote Windows Clipboard
Dino Esposito - September 2003
Cutting Edge: Creating a Multi-table DataGrid in ASP.NET
Dino Esposito - August 2003
If you bind a multi-table DataSet to a DataGrid, only the first table is recognized. Here Dino Esposito writes a custom solution the the multi-table problem.
Cutting Edge: Working with Images in the .NET Framework
Dino Esposito - July 2003
Cutting Edge: ASP.NET Controls Templates
Dino Esposito - June 2003
It's easy to create a custom control in ASP.NET by deriving a new class from an already existing control. Creating a new ASP.NET control from scratch, on the other hand, is more challenging. When you need a Web server control and none of the existing ones meet your requirements, you can derive from one of the base classes - Control or WebControl. Try it out.
Cutting Edge: Form-based Programming in ASP.NET
Dino Esposito - May 2003
One of the most common snags that ASP developers encounter when they first approach ASP.NET is that managed Web applications must be written according to a single-form interface model. Find out how it works.
Cutting Edge: MyTracer Monitors and Traces ASP.NET Apps
Dino Esposito - April 2003
The Microsoft® . NET Framework comes with a rich set of programming tools for debugging and tracing applications. I'm not talking about integrated debuggers; I'm referring to software components that you use in the development cycle.
Cutting Edge: Customize Your Open File Dialog
Dino Esposito - March 2003
Displaying an Open File dialog is certainly easy in the Microsoft® . NET Framework with Windows® Forms, but the resulting window is not as customizable as when you create it through the Win32® API. With Windows 2000, Microsoft added a nice feature—the places bar, which is the vertical toolbar that appears on the left side of the window to let you select a frequently visited folder.
Cutting Edge: The ASP.NET View State
Dino Esposito - February 2003
In ASP. NET pages, the view state represents the state of the page when it was last processed on the server. It's used to build a call context and retain values across two successive requests for the same page.
Cutting Edge: ASP. NET Client-side Hosting with Cassini
Dino Esposito - January 2003
In the September and October 2000 issues of MSDN® Magazine I discussed how to build a client-side environment for ASP applications; that is, a serverless environment to run ASP pages (see Cutting Edge: A Client-side Environment for ASP Pages and Cutting Edge: A Client-side Environment for ASP Pages—Part 2).
Cutting Edge: Binary Serialization of ADO.NET Objects
Dino Esposito - December 2002
One of the key elements that makes ADO. NET superior to ADO is the level of integration with XML. In ADO, XML is just an I/O format. In addition, the ADO XML format is totally inflexible and doesn't allow any type of customization.
Cutting Edge: Using Windows Hooks to Enhance MessageBox in .NET
Dino Esposito - November 2002
It's fairly safe to assume that all programmers working in Windows® environments are familiar with MessageBox. The MessageBox function displays a message through a popup dialog box and lets programmers add dialog buttons and icons to the message to improve user feedback.
Cutting Edge: Windows Hooks in the .NET Framework
Dino Esposito - October 2002
If you wanted to, you could distinguish two general categories of classes in the Microsoft® . NET Framework—classes that introduce new functionality such as XML readers and ADO. NET providers, and collections and classes that wrap underlying Win32® system functions.
Cutting Edge: Using an Eval Function in Web Services
Dino Esposito - September 2002
Web Services are often presented as the perfect tool for pro-grammers. They're interoperable, based on open standards such as SOAP and WSDL, and are fully integrated with the Microsoft® . NET platform.
Cutting Edge: Designing Reader Classes for .NET Documents
Dino Esposito - August 2002
Cutting Edge: Designing Extensible Windows Forms Applications
Dino Esposito - July 2002
Cutting Edge: Building a Data Navigator Control, Part III
Dino Esposito - June 2002
Cutting Edge: Building Editing Capabilities into the SqlDataNavigator ASP.NET Control
Dino Esposito - May 2002
Cutting Edge: Building a DataNavigator Control
Dino Esposito - April 2002
Cutting Edge: ASP.NET Data Shaping
Dino Esposito - March 2002
Cutting Edge: Data Binding Between Controls in Windows Forms
Dino Esposito - February 2002
Cutting Edge: Understanding Templates in ASP.NET
Dino Esposito - January 2002
Cutting Edge: Using Session and Application Objects in ASP.NET, Part 2
Dino Esposito - December 2001
Cutting Edge: Using Session and Application Objects in ASP.NET
Dino Esposito - November 2001
Cutting Edge: Build a Variety of Custom Controls Based on the DataGrid Control
Dino Esposito - October 2001
Cutting Edge: Reusability in ASP.NET, Part 2
Dino Esposito - September 2001
Cutting Edge: Reusability in ASP.NET: Code-behind Classes and Pagelets
Dino Esposito - August 2001
Cutting Edge: Custom Web Data Reporting
Dino Esposito - July 2001
Cutting Edge: DataGrid In-place Editing
Dino Esposito - June 2001
Cutting Edge: Server-side ASP.NET Data Binding, Part 3: Interactive DataGrids
Dino Esposito - May 2001
Cutting Edge: Server-side ASP.NET Data Binding, Part 2: Customizing the DataGrid Control
Dino Esposito - April 2001
Cutting Edge: Server-side ASP.NET Data Binding
Dino Esposito - March 2001
Cutting Edge: The Component Model in ASP.NET
Dino Esposito - February 2001
Cutting Edge: Binary Behaviors in Internet Explorer 5.5
Dino Esposito - January 2001
Cutting Edge: Element Behaviors in Internet Explorer 5.5
Dino Esposito - December 2000
Cutting Edge: Extend the WSH Object Model with Custom Objects
Dino Esposito - November 2000
Cutting Edge: Client-side Environment for ASP Pages-Part 2
Dino Esposito - October 2000
Cutting Edge: A Client-side Environment for ASP Pages
Dino Esposito - September 2000
Cutting Edge: SQL Server 7.0 and OLE DB Heterogeneous Queries
Dino Esposito - August 2000
Cutting Edge: Writing Custom OLE DB Providers Using ATL
Dino Esposito - July 2000
Cutting Edge: Creating and Optimizing Performance for XML Document/View Web Applications
Dino Esposito - June 2000
Cutting Edge: Extending HTML with Custom Tags
Dino Esposito - May 2000
Cutting Edge: Exchanging Data Over the Internet Using XML
Dino Esposito - April 2000
Cutting Edge: Accessing Recordsets over the Internet
Dino Esposito - March 2000