How to simply serialize and deserialize an interface with several possible concrete implementations using Json.NET
BlogAll • C# (4) • Entity Framework (2) • IdentityServer3 (1) • Json.NET (1) • LINQ (1) • MVC (2) • OpenID Connect (2) • OWIN (2) • TopShelf (1)
What looks like a C# collection initializer without a "new" keyword, is in fact a collection appender.
How to set the EnableServiceRecovery options of a console application running as a Windows Service using TopShelf.
Visual Studio has moved on and Resharper is no longer a prerequisite for efficient C# coding
Access Tokens are often short-lived and need renewing when they expire. This article is about how to do this and explains that Refresh Tokens are probably not what you should be using.
A simple C# algorithm that takes a sequence of characters and returns every possible combination of those characters.
Workaround for a bug where a cookie set in your OWIN middleware is missing from the response received by a browser.
A snapshot of my experience trying to implement OpenID Connect authentication flows using release candidate versions of Katana middleware and IdentityServer3.
How a calling method can tell an Entity Framework Code-First Repository to eager-load a variable number of related entities and collections.
A first-time walkthrough upgrading Entity Framework 4.2 to 4.3.1 and using Code First database migrations.
Some easily-followed conventions for naming & organising your View Models in a MVC application.
ASP.NET applications running on IIS6 and IIS7 use the NETWORK SERVICE account by default to access resources on the computer. This post explains how to use a different account.
Ways to keep a web application alive to avoid startup-delays.
How to post data in a form on an ASP.NET page to another web-site.
How you can debug Microsoft's open-source ASP.NET MVC v1.0 framework, using its source code.
Introducing the main variables that affect how ViewState is stored in an ASP.NET WebForms page.
Fixing white-borders or gaps in tabs when using the ASP.NET Ajax Toolkit Tab control and overriding the default CSS.
Describes the criteria used when selecting a Content Management System (CMS) for Appetere, the companies considered & the eventual winner.