Recommended Host

Development Blog

Jason Presley

Once the template has been created we need to export each of the projects. We do this by selecting the EXPORT TEMPLATE option. Export Template is under the FILE menu in Visual Studio 2015. In Visual Studio 2017 they moved it under the PROJECT menu. It will export the project as a zip file. This needs to be done once for each project.

Jason Presley

Scaffolding is a great time saver. However, as developers progress they find different patterns and techniques that they consistently use in their projects and will find themselves continually changing scaffolding the same way over and over. Microsoft has allowed for developers to customize scaffolding for each project. To take advantage of this all you have to do is make a copy of the templates you want, modify them and include them in your project.

Jason Presley

I have talked about Identity and how useful it is. There are somethings that I wish were included that are not however. This is when the ability to extend or modify Identity comes in useful. Storing a user’s name or other personal information in the AspNetUsers table is one of those things. In this post I am going to show how to add a FirstName and LastName column to the AspNetUsers table and then pull that information out when a user signs in.

Jason Presley

I have blogged previously about Identity and will continue to do so because I think it is a powerful and easy to use package for user and role management. There is a nuget package that I have used and talked about before called the IdentitySample. This package very easy to install; however, it has several issues. Thus I have created a GitHub project to take the best parts of IdentitySample without the issues areas.

Jason Presley

There is an issue in the Identity framework when the business requirements need a developer to interact with the roles that a user is assigned to as soon as the user object is created upon successful login. The Identity framework has a bug that has been posted online numerous times but is hard to identify through all of the other code that users post. Luckily there is a very easy fix for it.

Jason Presley

Depending on the application there may be times that it is desirable or required to add a user to a role immediately when they register. Other times you may want to add users to various roles depending on what privileges you want them to have. This is very easily accomplished in the Register method of the AccountController. This is the third post in a 3 part series on extending the ASP.NET Identity Framework.

Jason Presley

In Identity users can register and they will be redirected to a default page that asks them to check and confirm their email. The system is not setup however to email the confirmation message nor is it configured to lock users out until they confirm their email. This takes a little configuration but I take it a step further to make it as user friendly as possible. This is the second post in a 3 part series on extending the ASP.NET Identity Framework.

Extending-Identity-Identity Sample-and-Blocking-Users

The Identity framework is a great tool that allows developers to easily add authentication to their applications. It is functional with limited capabilities out of the box but I like to do some additional configuration to make it fully functional for the way that I work. This is the first post in a 3 part series on extending the ASP.NET Identity Framework.


I wanted to display a list of records grouped by category. There were numerous ways that people were doing it online, many of which were overly difficult and/or did not work. Ultimately it simply comes down to a simple Linq statement in the controller with the appropriate @model statement on the view.

Jason Presley

The beauty of ASP.NET MVC is its ability to leverage so many other frameworks to help improve code security, maintainability and SOLID development principles. One downfall however is that these different frameworks don’t always want to work together out of the box at times such as Identity for authentication and authorization and Unity for dependency injection. This is not very difficult to fix as long as you know what you need to add where.

Jason Presley

Log4Net is a very powerful logging application for ASP.NET applications. Logs can be written to a text file or also to a database. The one major downfall of Log4Net is that it does not have a built in interface to view the logs. I have created a new project on GitHub to house a MVC based UI for Log4Net logs that are written to a database.

Jason Presley

Trello is a Kanban style project management board. The gist of Kanban is the use of lanes and cards. Lanes represent the stages that an item must pass through in order to be completed. Each card represents a certain task or group of tasks that can be assigned to individuals. As each stage is completed the card is moved from one lane to another enabling a very visual and easily identifiable overall picture of the progress of the project.

Jason Presley

I have found myself return to past projects looking up code that I had written previously but many times it is in a larger section of code that I have to dig through. Snippet Managers allow you to store commonly used or valuable sections of code categorized and listed in an easy to find manner.