Entries for 2018

November 14, 2018

Implementing Background Tasks in ASP.NET Core with HangFire

Background job processing can be incredibly helpful. Anything from kicking off a longer-running process, to regular process of things such as outbound emails, and everything in-between. There are many methods or tools to be able to do this, however, finding an accurate getting started guide that works for a full implementation in ASP.NET Core is hard. In this post we will work through adding support for background tasks in ASP.NET Core using HangFire.

November 12, 2018

Creating a DNN Extension Build Pipeline in Azure DevOps

Over the past year-and-a-half I have been working to improve the automation in our development processes. It is my desire to always have consistent development, review, and release processes for all customers, regardless of their size. As I worked to leverage Azure DevOps more within our organization I realized that with very little work it is possible to create a build pipeline for DNN Extension development to create a clean process. In this post, we will dig into this process a bit.

November 11, 2018

DNN, .NET Core, and the Road Ahead

I’ll be the first to admit that this blog post should have been written a few weeks ago, however, a number of items needed to fall in-line before I could give this post justice. Within the DNN Technology Advisory Group (TAG) the future of DNN as it relates to .NET Core has been discussed at length many times. These conversations have come to multiple conclusions in the past, however, in the most recent discussions, thanks to some clarity by Microsoft an immediate term decision has been put in place. In this post I hope to try and share the highlights of those discussions, the reasoning behind the decision and the road ahead, at last as it appears now, for DNN.

November 10, 2018

.NET Core/ .NET Framework My Perspective On The Future

Over the past three years I've given many talks at conferences regarding .NET Core, I've implemented many solutions for customers using .NET Core, and help consult with many organizations looking to move forward. No matter what way you slice it, it seems that .NET Core is the future, but there are still many questions out there regarding the future and how you move forward. In my time working with .NET Core I made some assumptions early on that are starting to come true. With all of the recent news and confusion, I thought this would be a good time to try and summarize where we are, and what I think it means.

October 07, 2018

End-To-End .NET Core CI/CD with Azure DevOps

For the past year or so I have been using Azure DevOps (Formerly VSTS) to help improve the processes, procedures, and stability of all of the projects that I work on. Our team is not overly large, but we have been working to modernize our processes and to introduce solid procedures, including documented code reviews and systematic deployments. A while back we finally bit-the-bullet and migrated our source control over to Git from the TFVC which we had been using for a little over 6 years. With that done, branching strategies, pull requests, and automated deployments become easier to envision. However, to get a true, full CI/CD setup created It took many hours of research, playing with settings, and phone calls to friends for advice. With that behind me, I thought it would be nice to share the setup, end-to-end, in hopes that it might help others.

September 05, 2018

DNN Geo-Replicated Deployment in Azure (and Others)

Earlier today I blogged about Geo-Replicated Application Deployment in Azure for those looking for true high-availability deployment. In that article, I noted that it isn't possible to deploy something like DNN to those environments without a bit more consideration. This posting looks at the special considerations, and some potential suggestions to work around DNN in these types of environment.

September 05, 2018

Geo-Redundant Application Deployment in Azure

Just a little over 24 hours ago a Microsoft Azure datacenter experienced an extreme outage. For those with hosting primarily inside of the South Central US location, it resulted in outages lasting from between 8 to 20 hours, with a few select sites still impacted as I write this. There is a common misconception that if you are in the cloud you are ok. This isn't exactly true, the configuration and deployment of your application within the cloud will be the final determining factor of your stability. It is one thing to be secure/stable with Geo-Redundant backups but is a whole different story to be Geo-Redundant Availability wise. In this post, I'll look into what it takes to be truly Geo-Redundant in Azure and why it is often overlooked.

August 06, 2018

Improving the Security of Azure App Service Websites

Azure Web App hosting within the Azure App service is an amazingly flexible product. As with any product, with great flexibility comes a plethora of configuration settings that could expose your application to more risk. In this post, I'll investigate settings and configurations that you should validate in your own applications to ensure you are as secure as possible.

July 19, 2018

Should, When, and How Can I Migrate to .NET Core

Now that we are a few years into .NET Core I am seeing more organizations start to look at the big picture and decide if they want to migrate to .NET Core, or are evaluating .NET Core for consideration on new projects. Over the past few years I've given multiple talks at conferences with the title "Should I Transition to .NET Core? Will It Hurt?" This talk has been very popular so I thought I'd share a bit of context that you cannot get with the slides to help you better understand what might make the best sense for your organization/project.

July 17, 2018

Reporting Code Coverage in VSTS with .NET Core

Recently I decided to go back to using VSTS for my CI/CD processes after having some great experience with it on a project. As I evaluated the processes that I was following, one thing was missing from my existing CI process, and that was reporting on Unit Test Code Coverage for my .NET Core projects. I'll admit, it was something that I hadn't exactly looked at in a while. When I first started with .NET Core Code Coverage was a "Coming Later" feature and I wasn't too concerned about it. Searching for solutions I found a plethora of crazy recommendations and using the out-of-the-box VSTS build process for .NET Core did not get me what I wanted. In this post I'll walk through the process to properly get Code Coverage Calculated with each build, this will also allow the "Test" -> "Analyze Code Coverage" option to work in Visual Studio.

June 11, 2018

2018 Nebraska Code Presentations

Last week I was a speaker at Nebraska Code, held in the Omaha, NE area.  It was a great event, and although I had technical issues with one of the session it was still another great event.  For those that attended my talks, this post contains the slides etc.

May 02, 2018

Managing Dependency Injection in .NET Core

.NET Core's support for Dependency Injection is quite amazing. However, I still see projects that implement some bizarre solutions for things that are not that complicated. One of these items is how you configure dependency injection for assemblies that make up a project but might not be part of the main project.

March 23, 2018

DNN Platform 9.2.0 Released - What You Need to Know

If you have been watching the newsfeeds this morning you most likely noticed the release of DNN 9.2.0. This is a release that many have been waiting for in recent months as there are a lot of great changes and improvements in this release. As with any release, there are things to be aware of, this release though requires some extra special attention, I'll cover a few key points from my perspective here.

March 20, 2018

Using Multiple Authentication/Authorization Providers in ASP.NET Core

I find that in many cases application developers need to create web applications that can support not only the web application itself but an API that might be used by a Mobile Application or otherwise. I have seen some methods used in the past to create these two interfaces, everything from home-grown security to the creation of two separate applications that do the same thing. With ASP.NET Core we can use multiple authentication providers so we can easily support various providers and control when each should apply. In this post, I explore the process of supporting multiple authentication providers.

Content provided in this blog is provided "AS-IS" and the information should be used at your own discretion.  The thoughts and opinions expressed are the personal thoughts of Mitchel Sellers and do not reflect the opinions of his employer.

Content Copyright

Content in this blog is copyright protected.  Re-publishing on other websites is allowed as long as proper credit and backlink to the article is provided.  Any other re-publishing or distribution of this content is prohibited without written permission from Mitchel Sellers.