Leonardo Esposito
CODE Author
Dino Esposito is the author of “Programming ASP.NET MVC” for Microsoft Press as well as “Programming ASP.NET 4” and other bestselling books such as “Microsoft ® .NET: Architecting Applications for the Enterprise”. Regular contributor to MSDN Magazine and DevProConnections Magazine, Dino is a frequent speaker at industry events all over the world including Microsoft TechED and DevConnections. After a decade of Web development, Dino jumped on the mobile bandwagon and is actively developing for iOs, Android and WP7.
Articles Authored
-
10 Good Practices for ASP.NET MVC Apps
Last updated: Sunday, December 26, 2021
Published in: CODE Magazine: 2014 - May/June
Dino talks about the best possible layout for your project in MVC 5, and gives some great tips for helping you keep it all organized and effi cient.
-
A Crash Course on Custom ASP.NET Data-bound Controls
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2005 - July/August
Data-bound controls make ASP.NET programming much easier.They expose a bunch of properties and methods to link their properties to a valid data source and they know how to build their user interface to reflect the contents of the data source. Data-bound controls work by repeating a template for each data row and try to make an optimized use of system resources such as the viewstate. This article guides you to building a real-world, data-bound control that displays a pure HTML bar chart.
-
A Look Under the Hood of Windows Forms Data Binding
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2004 - September/October
Many developers have a dream: easy and efficient data binding.To be really quick and profitable, RAD (rapid application development) tools and techniques must be strong in data binding. They must provide a programming interface that is both easy to use and effective. Easy design-time composition of user interfaces; effective support of complex scenarios of interrelated data, dependencies, and filtering. In Windows Forms, the data binding machinery is highly sophisticated and designed to meet common needs of former client/server applications, now migrating to the more modern .NET multi-tier design. This article reviews common Windows Forms data binding techniques and provides answers and explanations.
-
A Not-So-Quick Tour of the Web DataGrid Control
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2003 - March/April, VFP Conversion Papers
Data-bound controls play a key role in the development of ASP.NET applications. Data-driven controls allow you to associate their whole interface, or individual properties, with one or more columns of a .NET-compliant data source. In this article, I'll delve into the depths of an extremely versatile data-bound control that is a fixed resence in any real-world ASP.NET application - the DataGrid control. I'll focus on the key programming aspects of the control, including data binding, column mapping, paging, and sorting.
-
ADO.NET Best Practices
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2003 - November/December, VFP Conversion Papers
ADO.NET is a powerful toolbox but it's not a software magic wand.To get the most out of ADO.NET classes, developers must fully understand the model and study a few best practices. Based on years of real-world experience with ADO, ADO.NET provides a richer set of more powerful tools. But, ADO.NET is not designed to be an out-of-the-box tool that reduces any programming work to just point-and-click. In this article, you'll learn about common best practices for using three key element of any data access strategy: connections, security, and transactions.
-
ADO.NET Best Practices - Part II
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2004 - January/February
ADO.NET has a strong and powerful disconnected model.It allows programmers to build a web of in-memory objects and relate contents coming from different tables and even from different data sources. When inter-related tables are involved with the process of query and update, code strategies are important to preserve scalability and maintain high performance. Sometimes compound queries can be more effectively accomplished splitting queries; sometimes not. Submitting changes in batch mode, exploiting the DataSet and its disconnected model, often appears as the perfect solution. However, what if you need to move dozens of MB? The serialization mechanism of the DataSet would increase that by a factor. Tradeoffs is the magic word.
-
All Input Data is Evil-So Make Sure You Handle It Correctly and with Due Care
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2007 - May/June
IT professionals agree that input is a big source of trouble. Input ultimately determines how applications work and wrong or malicious input may cause serious damage. It is extremely important that developers have this fact firmly in mind and consequently apply adequate countermeasures. Starting from the perspective that all input is evil is a good approach. Reasoning in terms of a whitelist instead of a blacklist is another excellent strategy. Working with strongly typed data is the third pillar of secure applications. This article discusses the role of input data and related attacks in the context of ASP.NET applications.
-
Android for .NET Developers
Last updated: Thursday, May 19, 2022
Published in: CODE Magazine: 2013 - July/August
Mastery of mobile platforms makes you a better developer and can really give you more job opportunities. But let’s face it: The list of mobile platforms that offer more healthy prospects doesn’t yet include Windows Phone and Windows 8. Your outlook is just plain better if you can code for iOS or Android.
-
ASP.NET: Extending the Power of Web Pages with User Controls
Last updated: Wednesday, August 31, 2022
Published in: CODE Magazine: 2002 - September/October
User controls represent an interesting and powerful level of page reusability in ASP.NET. You can build user controls by extracting and combining blocks of code from existing pages. You can also assemble ASP.NET controls together in a sort of embeddable form for use in Web pages. In this article, you'll get a crash-course on how to design, write and use ASP.NET user controls.
-
Challenges, Pains, and Points of Today’s Software Development
Last updated: Tuesday, July 27, 2021
Published in: CODE Magazine: 2015 - March/April
Although some of us write code for the pure joy of it, Dino invites us to think about mobility and the cloud to make apps reflect the world we live in.
-
Cryptography the .NET Way
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2003 - July/August
In real-world applications you just can't do without encryption.The problem with cryptography, though, is that sometimes it may make you use an overly complex API. The .NET Framework classes for cryptography don't require you to become an expert mathematician or a cryptography guru. In the .NET Framework you'll find symmetric and asymmetric cryptographic providers as well as hash providers. Some of these provider classes end up calling into the unmanaged CryptoAPI library while other parts of the .NET cryptography solution are purely managed code.
-
Customize the Windows Forms DataGrid Control
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2003 - January/February
When I first met the ASP.NET DataGrid control, it was love at first sight. Together we built several applications, taught dozens of classes, published countless articles and tips; we even wrote a book. I can say with no fear of lying that we have an intimate knowledge of each other. When I need the Web DataGrid to perform some rather odd task, I only have to cast a glance (or two, if the task is quite complicated.) With this in mind, I enthusiastically accepted a proposal from one of my clients: Build a Windows Forms application with grid functionalities. Although at the time I had no serious experience with the Windows Forms DataGrid control, I took the gig because I thought a Windows DataGrid works more or less the same as an ASP.NET DataGrid. Next, hardly containing some genuine enthusiasm, I optimistically conjectured it could have been even easier smart controls are handiest compared to HTML markup.
-
Discovering MooTools
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2011 - May/June
MooTools is an object-oriented JavaScript framework aimed at experienced web developers who need to write effective code quickly, effectively, and in a cross-browser manner. Dino walks you through how to use it and why you just might want to.
-
Dissecting and Putting the Visual Studio 2005 Generated Data Access Layer Into Perspective
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2006 - July/August
Do more with less code is the slogan of Visual Studio 2005.When it comes to reducing the amount of written code, wizards are definitely a viable option. Visual Studio 2005 has a lot of wizardry in it, especially to generate data access code. Any code that gets silently injected in your project follows a strict logic and a well-known design pattern. A full understanding how Visual Studio 2005 does it puts you on the right track to modify and extend the code to build your made-to-measure data access layer. This article dissects the code behind table adapters and binding source components to unveil patterns and best practices.
-
Enable Your Windows Forms Applications to Drag-and-Drop Data Objects
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2004 - July/August
If you want to capture your users' imaginations, enable drag-and-drop.Drag-and-drop doesn't fulfill requirements, but it contributes to making your application appear more professional and easy to use. In Windows Forms applications, drag-and-drop operations consist mostly of handling a series of events. By accomplishing a few mandatory steps and working with the information available in the event arguments, you can easily facilitate dragging and dropping files, text, and any other sort of serializable data objects. This article demonstrates how to import files from the Windows shell and how to enhance some UI controls to make them accept input via drag-and-drop. Notable examples are the TextBox and the PictureBox controls.
-
Five ASP.NET Controls You Might Be Craving
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2003 - September/October
ASP.NET is a terrific platform for Web applications.That does not mean that tricky coding is always one or two clicks away within a dockable and resizable Visual Studio .NET dialog box. Tricky solutions require tricky coding, just the kind of features that a wizard-driven environment and a general-purpose framework can't provide. In this article, we'll tackle five ASP.NET features that require wicked and creative code.
-
Implications and Repercussions of Partial Classes in the .NET Framework 2.0
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2005 - March/April
Partial classes are a hot new feature of the next .NET compilers.Specifically designed to overcome the brittleness of tool-generated code, partial classes are a source-level, assembly-limited, non-object-oriented way to extend the behavior of a class. A number of advantages derive from intensive use of partial classes; for example, you can have multiple teams at work on the same component at the same time. In addition, you have a neat and elegant incremental way to add functionality to a class.
-
Managing Processes in .NET
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2004 - March/April
The Process class allows you to gain full control over system processes.You can start and stop processes and retrieve information about running processes such as the list of loaded modules and the characteristics of the memory occupied. The class also features handy methods to know whether a process is responding or has just exited and with which return code. Programmers also have full control over the style of the window the process runs in. After an overview of the capabilities of the Process class, this article demonstrates how to hide running console processes, monitor their execution, and capture any output. I'll use this strategy to create a sample Compression class to use with WinZip and gzip (popular tools for compressing data).
-
Multi-view Pages for Web Sites: Client, Server, or Both?
Last updated: Tuesday, May 24, 2022
Published in: CODE Magazine: 2013 - July/August
I foresee that in a couple of years pretty much any Web site will be easy to consume from within mainstream devices. I deliberately used the term “mainstream devices” instead of more specific terms like tablets and smartphones just to give a measure of how fluid the situation is.
-
Planning Web Solutions Today: Web Forms, ASP.NET MVC, Web API, and OWIN. Oh My!
Last updated: Wednesday, March 16, 2022
Published in: CODE Magazine: 2013 - November/December
Be aware that this is not going to be a classic how-to article that delves more or less deeply into some technical issue or feature. It is, instead, an article that aims at providing an overview of the options you have at present for architecting Web solutions.
-
Stateful Network-Deployable .NET Components Use Isolated Storage
Last updated: Thursday, February 21, 2019
Published in: CODE Magazine: 2002 - November/December
Sometimes an application needs to keep its data in its own secure "sandbox". This article demonstrates creating these isolated applications in .NET.
-
The .NET File System Object Model
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2003 - May/June
The .NET Framework doesn't change the structure of the file system, nor does it build a new layer on top of it.More simply, but also more effectively for developers, it supplies a new object model for file system-related operations. A managed application can work with files and directories using high-level methods rather than low level understanding of the file system. This article provides an overview of methods and classes contained in the System.IO namespace.
-
The Easiest Path to Windows 8: HTML + CSS + JavaScript
Last updated: Monday, June 6, 2022
Published in: CODE Magazine: 2013 - March/April
Sometimes it happens that a new version of an operating system introduces a new type of application completely incompatible with older versions of the same system. The last time it happened I think it was with Windows 95. More than 15 years later, Windows 8 comes with support for a completely new segment of applications named Windows Store apps.
-
The Mythical Business Layer
Last updated: Wednesday, September 1, 2021
Published in: CODE Magazine: 2014 - November/December
Dino explains the business layer so that even a seven-year-old can understand.
-
The Software Comedy: State of the Art
Last updated: Thursday, September 2, 2021
Published in: CODE Magazine: 2014 - September/October
Dino has a somewhat literary take on the things that go wrong in software development. You’ll follow him through the seven rings of Software Hell in a parallel to Dante’s “Divine Comedy.”
-
Top-Ten Annotations and Remarks about the Wonderful and Powerful New Set of Features in ASP.NET 2.0
Last updated: Wednesday, February 20, 2019
Published in: CODE Magazine: 2006 - January/February
You’ll still write a good deal of code in ASP.NET 2.0.Don’t completely trust those who say that ASP.NET 2.0 cuts 70% of the amount of code you’re called to write. You’ll end up writing more or less the same quantity of code, but you’ll write code of different quality. You’ll have more components and less boilerplate code to tie together pages and controls. Features like the provider model, data source controls, and master pages make coding easier and equally effective. But since there’s no magic behind, you have to learn the implications of each feature you employ. In the end, ASP.NET 2.0 comes with code behind, not magic behind.
-
What ASP.NET 5 Means to a Technical Manager
Last updated: Friday, July 30, 2021
Published in: CODE Magazine: 2015 - January/February
Dino explores the new ASP.NET features and takes a close look at the ways it might benefit you to upgrade (or not).
-
What's New in the Visual Studio 2005 Toolbox for Windows Applications?
Last updated: Tuesday, February 19, 2019
Published in: CODE Magazine: 2005 - January/February
All developers always welcome new controls and components.When a big new development tool ships (say, one as big as Visual Studio 2005) many developers look at what's missing in the toolbox even before they take a thoughtful look at what's in. Frankly, the toolbox for Windows Forms applications was already pretty rich in Visual Studio .NET 2003, but it will be even richer when the next version ships. In this article, I'll take you on a whistle-stop tour of the new controls slated for Windows Forms 2.0 to make writing code more productive and pleasant than ever.