Skip to content
This repository has been archived by the owner on Jan 8, 2019. It is now read-only.

.NET Core SDK rc4

Enrico Sada edited this page Feb 16, 2017 · 11 revisions

Links for installation:

Use the simpler instructions but use -lang f# for dotnet new

The dotnet new args are changed, see below

F# works after install all supported os.

Some fsproj examples for rc4

To check version, you can run

dotnet --version

and the output should be 1.0.0-rc4-004771

An quickstart, to create a console app and run it:

dotnet new console -lang f#
dotnet restore
dotnet run

To run an ASP.NET Core app, is the same, just use another template

dotnet new mvc -lang f#
dotnet restore
dotnet run

NOTE in this version 2.21.1 intellisense doesnt work (ref ionide/ionide-vscode-fsharp#341 ), fix will be included in the version of ionide

To use Visual Studio Code with Ionide with full intellisense,build,run (debug doesnt work) do dotnet build BEFORE opening the VSCode. You can also reload the language services by invoking the "Reload Window" command from the command palette by pressing F1 or Ctrl+Shift+P and typing Reload Window. Reloading the window can also help if the F# language services stall in VSCode for any reason.

dotnet new lib -lang f#
dotnet restore
dotnet build
code .

Notes

Like rc3, this version is msbuild based

  • This version is based on msbuild (version 15.0) so .fsproj for project file
  • normal command (dotnet build, dotnet pack, etc) continue to work, but invoke the msbuild
  • use dotnet msbuild to run msbuild directly

Changes from rc3

  • CHANGED dotnet new arguments

Is now based on https://github.com/dotnet/templating and cli args are changed a bit

See msdn blog post who contains info about dotnet new

For example:

  • in rc3: dotnet new -t console -l fsharp (or -l fs or -l f#)
  • in rc4: dotnet new console -lang f#

In rc4 argument is -lang f# (no more alias like fsharp or fs)

Do dotnet new -lang f# to show all template for F#.

Or dotnet new -l for all templates (C# and F#)

Known issues

dotnet-migrate

dotnet migrate doesnt support F# yet:

error on build/pack using multiple frameworks (<TargetFrameworks>)

using <TargetFrameworks>net451;netcoreapp1.0</TargetFrameworks> the dotnet build/pack fails

  • WORKAROUND: pass runtime to build net451, for example -r win7-x64

using .NET Framework as targets framework, the osx/unix build fails

Use a .net framwork (not core) like <TargetFramework>net451</TargetFramework> (or in TargetFrameworks) the dotnet build/pack fails on osx/unix, instead on windows work

IDE Support

  • VS Code with F# Ionide extension: ok (build/run), ko (debug/intellisense)
  • VS 2017RC: no
  • Notepad and cli: from day 0 all dotnet sdk commands, ok (new,restore/build/run/pack/publish/test), ko (migrate)