Red Hat Releases .NET Core 2.0

As a follow-up to yesterday’s press release, I am pleased to announce the immediate availability of and support for .NET Core 2.0, the latest version of the open source .NET Core project, on Red Hat’s portfolio of open technologies. A lightweight and modular platform for creating web applications and microservices, .NET Core 2.0 provides significant new developer capabilities while enabling developers to create .NET applications across platforms, and deploy on Red Hat Enterprise Linux, Red Hat OpenShift Container Platform, and more.

Continue reading “Red Hat Releases .NET Core 2.0”


From Java to .NET Core, Part 2: Types

In my previous post in the series, I discussed some fairly surface-level differences between C#/.NET and Java. These can be important for Java developers transitioning to .NET Core, to create code that looks and feels “native” to the new ecosystem. In this post, we dig beneath the surface, to understand .NET’s type system. It is my belief that, with Java in the rear view mirror, the .NET type system is more effective and enjoyable to write on. But you be the judge.

Continue reading “From Java to .NET Core, Part 2: Types”


From Java to .NET Core. Part 1

There was a time when the word “.NET” was virtually synonymous with bloat, vendor lock-in, and Windows. .NET Core is the exact opposite. It’s blazingly fast. It’s open source under a permissive license (Mostly MIT, some parts Apache-2.0). Unlike some other open-source platforms, .NET Core’s Contributor License Agreement does not grant exclusive privileges to a single corporation. .NET Core is cross-platform, allowing you to target Windows, Mac, Docker, and many flavors of Linux. My favorite resource for getting started with .NET core is Don Schenck’s free book. This post, I hope, can serve as an addendum specifically for Java developers exploring .NET’s flagship language, C#. While C# borrows much from Java, there are important differences to be aware of. Fortunately, some of them are for the better. In this series of posts, I’ll go over a few of the most prominent differences.

Continue reading “From Java to .NET Core. Part 1”


Welcome to Red Hat Enterprise Linux, MSBuild, a build tool for .NET Core CLI!

Microsoft announced the first “alpha” release of the new MSBuild-based .NET Core tools. .NET Core SDK which can be downloaded from the Red Hat Developer Program site consists of .NET Core Runtime and .NET Core command line tools (.NET Core CLI). (Reminder – you must have a Red Hat Enterprise Linux subscription first.  If you don’t, you can go here for a no-cost subscription.) The MSBuild tool is included in .NET Core 1.0 preview 3 (not in the latest release .NET Core 1.1). The version number is something complicated because .NET CLI is not GA but still under preview. The MSBuild tool can be used with both .NET Core 1.0 and .NET Core 1.1 runtimes. RHEL is not listed in the .NET Core SDK 1.0 Preview 3 download list. But you can try MSBuild with the .NET Core CLI daily build.

NOTE: Red Hat has just released .NET Core 1.1. However, .NET Core 1.1 doesn’t include the MSBuild tool, you can try MSBuild following this blog.

Continue reading “Welcome to Red Hat Enterprise Linux, MSBuild, a build tool for .NET Core CLI!”


Observations on Porting from .NET Framework to .NET Core

You’ve heard that .NET has gone open source. You’ve also heard that it has gone cross-platform. And you’ve even heard that Red Hat is shipping a supported version of .NET on Red Hat Enterprise Linux. So maybe you are thinking to yourself, “wow, this is fantastic! I’m going to copy these EXEs and DLLs of my .NET application over to my Red Hat machine and run them!”

Well, unfortunately, it’s not going to be quite that easy. At least not today.

First and foremost, the open source version of .NET is called “.NET Core.” It is available for many platforms, including Windows and Linux. Those .NET projects and applications that you already have running, however, were built on and for .NET Framework. And .NET Framework and .NET Core are not the same thing; they are more like siblings, which also implies that one is not a subset or child of the other.

“Well, then, what’s the point?!”

The good news is that while they are siblings, they do look a lot alike. Although they’re not identical twins, you’ll definitely recognize them as being from the same immediate family. As such, it is possible to port many existing .NET Framework applications to .NET Core.

“How hard is it to port something?”

Continue reading “Observations on Porting from .NET Framework to .NET Core”


Working with OpenShift secrets for ASP.NET Core

If you want to use secret configuration which you don’t want to store the code repository during developing ASP.NET Core app, what will you do? ASP.NET Core provides Secret Manager tool. Then how about developing on OpenShift? I’d like to talk about Secret Manager tool and working OpenShift secrets for ASP.NET Core in this blog.

Continue reading “Working with OpenShift secrets for ASP.NET Core”