Introducing .NET Core

- [Instructor] Now that you have everything installedthat you need for this course,let's dive into .NET Core itself.So one of the questions I get asked many times is,"Why .NET Core?"After all, there's millions of developersusing ASP.NET MVC and Web API.And did they need to, they being Microsoft,really need to create a whole nother framework?Well, one of the problems with the current ecosystemis that there are too many vertical frameworks.

So we've got desktop development.We've got Phone,which is Xamarin now, but was based on Mono.Silverlight, granted, Silverlight has gone away,but it had a little different flavor of XAML than WPF.And then even within the web development space, ASP.NET MVCand Web APIhad some glaring differencesbut also some very subtle differences between 'em.And customers were asking for a single unified platform.

There were also many customers that were asking forcross-platform support.Now, .NET Core started off as Project K,and it was, with discussions of the Windows Nano team,trying to get a version of .NET that would runon something other than full-blown Windows.Now, you might ask why that matters.Well, first and foremost, it can reduce operating costs.It is cheaper to maintain aLinux or Unix-based server than it is a Windows server,and anybody who has hosted their own websitecan attest to that.

And there's also the goal of Microsoftto expand a developer base.There are millions of Java developers out there.And the question is, do they really want to develop in Java,or is it because they want to run on Linux?Well, now you have choices.Regardless of how you want to deploy it,you can use the .NET stack.I'd be remiss if I didn't call out the elephant in the room,and that is the original name of .NET Core,which was ASP.NET 5.

And this caused all kinds of confusionsin the .NET community and, of course,outside the .NET community.Microsoft had a very specific goal,and they didn't want to lose the ASP.NET brand.They had spent years and lots of money and timedeveloping that brand, and it's a very powerful brand.But the problem with naming it ASP.NET 5is many people thought it was the next versionof the .NET Framework because we were currently at 4.6when it got released, so 4.6 is less than five,5 must be the next full version.

Fortunately, for all of us,Microsoft rebrandedthis new cross-platform version of .NETas .NET Core.And it's three main pieces,.NET Core itself,the ASP.NET Core framework, and Entity Framework Core.So let's talk about the composition of .NET Core.And when we refer to .NET Core,we're really talking about two specific pieces.And that is the runtime, or the CoreCLR,and that has garbage collection, the jitter,the base .NET types.

This is the layer that sitson top of whichever operating system you're deploying toor developing on and provides the equivalentof the virtual machine that you would find perhaps in Java,but also in .NET.Then there's the framework libraries,and that the CoreFX.And that's mostly platform agnostic.There aresome platform-specific items in there,which is why you'll have a specific installfor the CoreFX as well,but normally we just refer to the .NET Core frameworkas both of those put togetherand never really consider them separate pieces.

Then sitting on top of that is the application hostand command-line interface.You've already seen both of these in action.The application host is dotnet.exe.That's how we're going to run applicationsin the .NET Core world.And the command-line interface we used tobuild the migrations as well as run the applicationfrom the command prompt when we did dotnet run.Next up, we have the development frameworks,and what we're talking about today in this courseis ASP.NET Core and Entity Framework Core.

And then on top of all that,you have your custom applications.One difference in .NET Core from previous versions of .NETis there are only two types of projects.There are console applications or class libraries.So even if you're making an MVC-type web application,it is still just a console app at its root.We talked about the cross-platform deployment,and here are just some of the examples.

There's, of course, many, many more.But you could do the traditional Windows or Azure,using IIS.You can also self-hostin Windows or Azure app service outside of IIS.You can run on Linux, for example, using Apache or NGINX.And you can also run on Windows and Linux using Dockeror other containers as well.

Resume Transcript Auto-Scroll

Author

Released

1/26/2018

Navigating all of the new features in each release of ASP.NET Core can be challenging. In this project-based course, Phil Japikse helps to simplify this process by laying out the new features in ASP.NET Core 1.0, 1.1, and 2.0, and acquainting you with the benefits of each. Phil begins by providing a general overview of .NET Core and discussing migration considerations. He then dives into ASP.NET Core 1.0, discussing the updated project structure, new environmental awareness, view components, and other new features. He then moves on to discuss ASP.NET Core 1.0 and ASP.NET Core 1.1, diving into helpful new features and functionality present in each iteration of the web framework.

Skills covered in this course

Course Retiring Soon

ASP.NET Core New Features (2018) will be retired from the lynda.com library on March 8th, 2019. Training videos and exercise files will no longer be available, but the course will still appear in your course history and certificates of completion. For current training, check out ASP.NET Core New Features in the lynda.com Online Training Library.

Continue Assessment

You started this assessment previously and didn't complete it. You can pick up where you left off, or start over.

Start My Free Month

Start your free month on LinkedIn Learning, which now features 100% of Lynda.com courses. Develop in-demand skills with access to thousands of expert-led courses on business, tech and creative topics.