Nick Harrison is a Software Architect and .NET advocate in Columbia, SC.
Nick has over 18 years experience in software developing, starting with Unix system programming and then progressing to the DotNet platform. You can read his blog as www.geekswithblogs.net/nharrison
Scaffolding is a great way of kick-starting model-view-controller (MVC) framework development. Visual Studio's MVC Scaffolding uses templates to generate the routine code that is common to all ASP.Net MVC builds, such as data access and Web API. It allows the developer to concentrate on what is unique to the application.… Read more
ASP.NET MVC provides a way of providing declarative validation of user inputs. It removes a lot of the tedium of this important task. Nick Harrison explains how to do it, and also points out why it is so important to provide input validation… Read more
If you find yourself doing routine work repeatedly in ASP.NET MVC, it is worth exploring the possibilities that come from modifying or creating Editor Templates in Visual Studio. Templates can save you a lot of time when creating views or other default content. Nick Harrison explains.… Read more
When we see a grid with some interesting data in it in an MVC application we, as users, expect to be able to download it as an Excel spreadsheet. If your application can't do it, it is no use telling the user that it is too difficult, because it isn't, as Nick Harrison explains.… Read more
T4 usually stays behind the scenes in Visual Studio, but if you find that you have a good reason to write similar code over and over again, or use a lot of copy and paste, then it could be that you have a specific use for T4. There are times when it can be useful for generating code templates but it is versatile to provide a solution for a number of programming headaches.… Read more
It's possible to build up dynamic LINQ queries or queries with several conditional criteria. In fact there are several options for doing this, including the use of expression trees.… Read more
Almost certainly, any HTML-based application is going to need to create markup on the client-side, using JavaScript. The language isn't particularly geared for the task, but with JQuery and now JSrender, it is no longer something that the web programmer needs to dread… Read more
When you are working with the .NET framework, it is great to be able to view, and step into, assemblies. The documentation is handy to have, but nothing beats being able to see and debug the code to understand how it works. Suddenly, the new Async features stop being mystical, and start to make practical sense.… Read more
Anyone in IT should be aware of jQuery. This free, open-source JavaScript library has become amost essential to anyone creating a web-based application. Nick Harrison explains, in as sucession of small examples, why it helps his productivity so much, and takes the grudgery out of creating dynamic web pages.… Read more
You can automate .NET Reflector processes, and run .NET Reflector from within a .NET application, from within ASP.NET or even within ASP.NET MVC. What is more you can host a reflector Add-in. This opens up many possibilities as Nick Harrison points out.… Read more
When Agile meets 'Big Design', the result can be frustration on both sides. Is it possible for database development to to easily coexist with Agile methodologies for application development? Nick suggests that the technical solutions already exist, and the dissonance is more due to cultural and organisational problems… Read more
Although the methodology of refactoring code has been adopted enthusiastically, the same has not really been the case with databases. Nick argues that the reason could lie in the extent of the task of unpicking complex databases systems sufficiently to make them more efficient and effective; and this will only be ameliorated with better tools and planning to support the techniques.
… Read more
NHibernate can help to build a project more quickly if the database it connects to is sound. Otherwise, there are bound to be problems, but they are not problems of NHibernate's making. Nick Harrison gives some advice, and suggests some 'best-practices' for using it, fresh from the reality of developing an application based on NHibernate.
… Read more
Your application code may look neat and clean, and you are using a sound Object-relational Mapper, but when you put the pedal to the metal, you're not getting the performance. The time has come to lift the hood and see what SQL is being generated by the ORM, and what part of your code is causing the bottlenecks. The effect can be spectacular.… Read more
jQuery is one of the most popular JavaScript frameworks. It shields the programmer from the idiosyncrasies in the way that each browser implements the language: it makes life easier by doing all the routine chores and takes the pain out of AJAX. It also introduces a 'Wow' factor to browser-based applications.… Read more
In the third of a series on Web Application design, Nick turns his attention to the Model part of the Model View Presenter (MVP) pattern, and discusses what a well-behaved model might look lik… Read more
ASP.NET developers can learn a lot from MVC practices. This article shows you how to structure a WebPage in an ASP.Net web application so that it is behaves like an MVC View, and suggests a number of ways to increase the quality, and portability, of ASP.NET applications by encapsulation, and separating the logic between the Presenter and View.
… Read more
Reflector 6 is here. Nick Harrison is a long-time Reflector enthusiast, and has been responsible for writing an add-in. As he'd helped test the new version, Nick asked to review it for Simple-Talk. The team were anxious to know what he thought. They needn't have worried.… Read more
Nick explains why such habits as using nested HTML Tables to position content in the right place on the browser page is bad practice and, nowadays, avoidable. This is just one 'Markup smell' that he discusses on the way to demonstrating the benefits of CSS Style-sheets and ASP.NET Master Pages.… Read more
.NET Reflector was the first .NET tool to allow assemblies to be disassembled back into the high level language that produced them. Moreover, it has a plug-in architecture that allows you to disassemble to any language for which you have a plug-in, or are prepared to write one. Nick Harrison takes it one further step, and creates a plug-in that produces the CodeDom code needed to create the contents of the assembly. Nick explains, gently.… Read more