Replacing C# DateTime with NodaTime

A recent client project was starting to feel like water torture. It seemed like every day we were finding another date and time bug in our software. As an experienced software developer, this was infuriating for a couple of reasons: In all my years I had never been on a project with the number of issues we were having I felt I should simply be better than this For crying out loud it's 2017 and we're still having time zone issues! Rules of Thumb After having a good pity party I reviewed my standard time handling rules Store everything in…

read more...

Bootstrapping ASP.NET Core - Week 4

Adding ASP.NET Core Identity to an Existing Project Most of the existing documentation for ASP.NET Identity start with selecting “individual user accounts” when creating a new ASP.NET Core project. We already have a project so we need to look at adding ASP.NET Core to an existing project. Identity Overview What is ASP.NET Core Identity? ASP.NET Core Identity is the membership system for building ASP.NET Core web applications, including membership, login, and user data. - msft There are four main components that are used to make up the ASP.NET Core Identity system that…

read more...

Bootstrapping ASP.NET Core - Week 3

In Part 2 of our series, we used Swagger to define a simple REST API for our dog walking application. In this installment, we are going to use Entity Framework Core to work with a database from our ASP.NET Core application. What is Entity Framework Core? Entity Framework Core is an object-relational mapper (O/RM) that enables .NET developers to work with a database using .NET objects. It eliminates the need for most of the data-access code that developers usually need to write - MSFT documentation Like ASP.NET Core, EF Core is a rewrite of the previous version…

read more...

Bootstrapping ASP.NET Core - Week 2

Creating a REST API with MVC and Swagger In our last post we navigated around an empty ASP.NET Core application. This week we are going to start adding familiar MVC and WebAPI style routes and controllers. Along the way we will compare the starter template to the project we are building from scratch creating and discover how Swagger can help us easily document our REST API. We will also dig into ASP.NET Core configuration options and managing different environments in our application. Code is here: https://github.com/hansonio/fido/tree/part2 Demo application is here: http://walkfido.…

read more...

Bootstrapping ASP.NET Core - Part 1

In the first technical post in the Bootstrapping ASP.NET Core series we take a look at what makes up a new ASP.NET Core project from install to producing simple HTTP Responses and the building blocks we'll use to build Walk Fido, a dog walking application. You can read the introduction to this project here Learning to Crawl Before Walking My oldest son has always been somebody who just does things his own way. From what he reads, how he learns music or even how he chose to play soccer when he was a kid. My wife and I…

read more...

Bootstrapping ASP.NET Core - Week 0

Every year I pick a new technology to learn and then give a presentation on it at Boise Code Camp. Usually it’s something I’ve been wanting to learn but haven’t had the time or opportunity to use at my day job or with my clients. Some of the topics I’ve spoken on include Django, RavenDb, MonoTouch (before it was called Xamarin) and even how to modify Minecraft on a Raspberry Pi. I never did learn how to build blocks of exploding dynamite but it’s been great process. I have learned a lot and had a…

read more...