Shawn Wildermuth

The Blog

My Rants and Raves about technology, programming, everything else...


ASP.NET Core Dependency Injection

codesoupI’ve been building some ASP.NET Core apps as of late and had to dig into how Dependency Injection works there. After talking with Julie Lerman a bit on Twitter about it, I realized that there might be some confusing things about how it works in ASP.NET Core, so I’m hoping I can add some clarity in this post.

One thing I like about ASP.NET Core is that since it is a new platform, I’m learning something new all the time. When I suggested to Julie to use DI in her example database seeder, but of course there were things I was missing and my suggestion would actually just leak a context object. Lets look at some of the default dependency injection in ASP.NET Core to see how it is supposed to work.

First question is whether the built-in dependency injection should be used at all. Lots of developers and companies have had long-winded meetings and discussions how a specific DI layer is marginally better than all the rest. Some third-party DI layers have additional features that you really want, so it’s up to you. Most of the major players (e.g. StructureMap, Ninject, etc.) have integration with ASP.NET Core’s DI so you can switch out the built-in provider. I find the built-in provider to be fast, but not exactly feature rich but for smaller projects it’s easy and simple so that’s what I’ll talk about.

Read...


NDC Sydney was Awesome!

20160805_172651We just left Sydney after a great few days of the NDC Sydney conference. Saw some very cool talks about ASP.NET Core and Angular2!

Of particular interest was a talk by Steven Sanderson on JavaScript services for ASP.NET Core (e.g. cool things to do with Angular2, React and Node). When the recording is done, you should totally go see it!

I had two talks at the event: “ASP.NET Core Logging” and “Getting Ready for Bootstrap 4”. When the videos are posted, I’ll share them here. But for the people who attended the talk, you can get my demos here in github:

Read...


Is Angular2 Too Full of Ceremony?

angular2I know this was a “click-bait” post name, but so be it. I’ve been doing some small Angular2 in a recent project (rebuilding the new Atlanta Code Camp website) and I’ve been frustrated with the amount of ceremony. But I may be misunderstanding Angular2 so bear with me.

The problem for me is in the idea of SPA in general. SPA seems to imply monolithic apps but written in client-side web code. For a single, large scale application, Angular2 seems like it is just right…but that’s not what I do.

I want client-side frameworks to fill in the holes for when a website needs rich user interaction. Making every part of a page some sub-element in a huge SPA makes as little sense as the old monolithic Visual Basic 3.0 apps that used to be the norm.

Read...


My ASP.NET Core Course Has Been Updated to RTM

I’m really excited to announce that my popular Pluralsight course on ASP.NET Core has been updated to RTM. It’s been a long slog to update and I apologize for the delay but it’s ready now.

The course is so different from the earlier builds, that we’ve decided to retire the older course and create a complete fresh course. Over 60% of the videos had to be updated and the entire set of example code had to be changed too.

Luckily we’ve reached the RTM milestone so that we can finally depend on the APIs not being changed. The ASP.NET Core tooling is only at Preview 2 so we will be making minor changes to the course as the tooling is updated.

Read...


Virtual Reality Whitman's Sampler

20160626_232049When I was a kid, I had the dream of building an immersive ‘video’ game. I thought the magic was going to be holography. My idea was a holographic skiing game. Of course holographic tech didn’t mature like I hoped it would.

So now that VR is having it’s resurgence, it’s made me think back to those days of old. In this post, I’d like to talk about the different devices I’ve had.

I have to admit, I got an Oculus DK2 not to try and write some software for it. Instead I was obsessed with Elite Dangerous and being able to fly around the galaxy in three dimensions was too enticing.  The Oculus DK2 was a great device. It opened my eyes that VR has finally landed and was real.

Read...


Converting ASP.NET Core 1.0 RC2 to RTM Bits

officetoolsIf you’re like me, you’ve changed your projects from RC1 to RC2 only to find out that the RTM was coming quickly. Well we are here so we need some steps to convert projects.

Like other posts, I am going to list all the changes I found but there are likely more that I didn’t run into. Feel free to use the comment system to add more as you like!

Rename all the “1.0.0-rc2-final” references to just “1.0.0

Read...


ASP.NET Core 1.0 Released!

DiscussThis day has been a long time coming but I want to congratulate the team at Microsoft for delivering the first version of ASP.NET Core! I’m very excited to start working with the bits on real projects.

If you haven’t had a chance to look at play with ASP.NET Core, it’s time! For the ASP.NET MVC and Web API users, the transition is pretty quick, but if you’re coming from ASP.NET Web Forms or another technology, there is a learning curve.

My sense of it is that this is a new platform, not a new development model. You are closer to the metal without having to give up the productivity of the ASP.NET you’ve always loved (and maybe hated a little). This is a mature, open source, cross platform, and fast ASP.NET. It’s a new day in Microsoft’s web platform and it’s time to be a part of it.

Read...


Win a T-Shirt from the Hello World Road Trip

hwroadtrip-shirt-front-and-backWe got home and have extra shirts. Love to give them away. Sign up for our mailing list and we’ll pick winners to get one of our limited edition T-Shirts.

The shirts come in S, M, L, XL and 2XL but limited quantities of each. Please sign up below if you want win a shirt. We will be mailing them out by the end of July. Please note that we can only mail them to the United States and Canada.

You can sign up here:

Read...


Thanks for the Great Road Trip!

We’re home. It’s a fantastic feeling, but we had a great time. I wanted to take some time to thank all the great attendees, guests and helpers that made this a great trip. We got some great podcasts and hopefully encouraged a lot of people to try out ASP.NET Core!

We took a lot of pictures and you can see some of them by clicking on the mosaic to the right!

Some statistics of the trip:

Read...


Converting an ASP.NET Core RC1 Project to RC2

datascreenWith the release of ASP.NET Core RC2, Microsoft hit a major milestone. But this change isn’t a trivial one. It’s a big change.

Since I’m updating my Pluralsight course on ASP.NET Core, I wanted to get a list of changes for the new version. I figured I’d share all the changes I could find converting a stock RC1 project to a RC2 one. It’s a big list, but hopefully manageable. Please share in comments and changes I missed so others can be helped!

First, change the framework to the new naming style. For dxcore use:

Read...