This is no longer valid with the implementation of CLI - Command Line Interface
Gradually all the technology that emerged from the opening of the code . NET and more modular architecture is consolidating and reaching the point of having everything necessary to use in production.
You may already know that Coreclr replaces . NET which is a platform full of things to make applications work. But if the CLR is only one of the components of the .NET. Then Coreclr does not completely replace the .NET. Some components that take care of the operating infrastructure of the applications developed using the CLR are necessary to start the application.
Remember that the moment you install . NET on the computer, you practically create a second operating system running there. If it is in the directory where . NET is possibly installed inside the C:\Windows
You’ll see there’s something very complex there. That’s not just the CLR. Has compiler, environment managers responsible for exception control, memory management, threads, processes, domains, code security, etc. It is the native host that runs the managed applications.
Well, the DNX is this but with a different philosophy, more modular and less intrusive in the operating system, as is the .NET. It is a more conventional way of calling the managed application, ie, you call the DNX that will call the rest. On . Net this is more transparent. A lot of people think they are running a real executable when running an .NET. Note that I am not saying it is an exact replacement.
To official definition says he’s a SDK specific to. NET applications.
Its main motivation is to host ASP.NET applications, as it allows the application to run without relying on an extra infrastructure, such as IIS, for example. But it is not restricted to this.
I don’t think I need to say that one of his differences to . NET is that it was made to run on several platforms and the . Original NET continues to be exclusive to Windows. By its philosophy it must be difficult to port . NET in the current form to other platforms. And Microsoft isn’t even interested in this. Making the same system load environment and application would be very complicated on other platforms. That’s why Mono and Java don’t do this.
In the answer I gave (linked in the above question) I give more details about the fact that there are several hosts, various versions of CLR, some custom. How to manage all this, how to have something in common that makes it all work? The answer is DNX. Obviously there are other ways to run a. NET application without DNX. It is one of the ways to do this.
It also helps meet more modern demands. It handles modern configurations, packages and upgrades. It can manage dependencies and you just pull into one deploy what you’re really going to use.
Taken from DNX Wiki.
I know I’ve forgotten a few things he does, I try to improve over time. If you have something specific you need to know, which is translated from the documentation, leave a comment.
It’s good to stay tuned for news. The DNX is being modified.