Journey to the .NET Core - Application Types & Distribution Strategies

An important concept when it comes to .NET Core is Application Portability, in short where and how we are able to distribute and run our applications. .NET Core has two types of applications: Portable applications. Self Contained Applications. To illustrate the difference between these two let’s start creating a “multiple projects solution” to use with Visual Studio Code: Create a new folder which will contain the project hierarchy. Create a “global.json” file in the folder with this content: { "projects": [ "PortableApp", "SelfContainedApp" ] } This file will be used by the dotnet utility to work on all the projects...

Journey to the .NET Core - Frameworks, TFM and Dependencies

When you deal with .NET projects you should keep the following concepts in mind: Framework: it’s a stand alone implementation exposing a well-defined Runtime environment, an API and utility functions. Several versions of the .NET framework exist each or them adding new feature and breaking changes over the previous one. Target Framework Moniker: it’s a short name to identify a specific version of the framework. Dependency: with this term we typically intend a part of the features exposed by the framework (or by a library) and packaged together as a whole. The package is then made available with a package...

Journey to the .NET Core - Windows Development Environment Setup

On the journey to learn .NET Core our entry point should be this link: .NET Core There we’ll find some very easy to follow tutorials on how to install it and get started using our OS of choice. To start developing your .NET Core application on a Windows machine we basically have two choices: The Command Line tool (dotnet.exe) and our favorite editor - this approach is very lightweight and useful for small projects and on systems that do not have Visual Studio. Visual Studio 2015 (and up) - if you like to use a fully featured IDE loaded with...

Migrate from SVN to GIT

I know there are plenty of articles on the subject, but I needed to keep track how I did it. To migrate my current SVN repositories to Git I started to look around for some documentation and ended up with this process in mind: Clone the SVN repository to a local Git Repository while filtering the data and converting the users. Create a Remote (bare) Git repository that will be my new ‘master’ repository. Choose which branches of the local repository push to the new remote Git repository. These are the steps I followed: Step 1 - Install Install Git...

TypeScript - Visual Studio / MSBuild conditional compilation

Conditional Compilation is not yet available in TypeScript, some requests and proposals have been made: Support conditional compilation Proposal: Conditional Compilation Proposal: Preprocessor Directives If you are using Visual Studio and MSBuild there’s however a very simple workaround to completely exclude some TypeScript files from being compiled. The solution is to use MSBuild Conditions and/or MSBuild Conditional Constructs, it all depends on how complex your conditional logic will be. In the simplest case you just have to open your .csproj (or .vbproj) file in a text editor and add the proper Condition attribute to the TypeScriptCompile entry; something like: ......

A first look at IncrediBuild

Visual Studio 2015 Update 1 come with a new free bonus: You can download and install a new version of IncrediBuild. If you install it through Visual Studio you’ll get a version of IncrediBuild specifically designed for the environment that will allow you to keep using 8 cores for parallel builds even when the trial license expires (normally it will be limited to 4 cores). To install it use the “File \ New \ Project…” menu, then look for a link called “Build Accelerators”, inside it you’ll find the template used to install IncrediBuild. Once you ‘open’ the link, the...