F#使用.NET Core CLI

本文介绍如何你可以开始使用 F# 在任何操作系统上 (Windows、 macOS 或 Linux) 使用.NET Core CLI。 它将经历构建使用由一个控制台应用程序调用的类库的多项目解决方案。

若要开始,你必须安装最新.NET Core SDK

本文假定,您知道如何使用命令行,并且包含首选的文本编辑器。 如果还没有使用它, Visual Studio Code是作为文本编辑器中进行 F# 很好的选择。

打开命令提示符处/终端,并使用dotnet 新命令创建名为的新解决方案文件FSNetCore:

dotnet new sln -o FSNetCore

运行上述命令后会生成以下目录结构:

FSNetCore ├── FSNetCore.sln

将目录更改为FSNetCore。 使用dotnet new命令,创建一个在类库项目src名为库的文件夹。

dotnet new classlib -lang F# -o src/Library

运行上述命令后会生成以下目录结构:

└── FSNetCore ├── FSNetCore.sln └── src └── Library ├── Library.fs └── Library.fsproj

内容替换为Library.fs使用以下代码:

module Library

open Newtonsoft.Json

let getJsonNetJson value =

    sprintf "I used to be %s but now I'm %s thanks to JSON.NET!" value (JsonConvert.SerializeObject(value))

将 Newtonsoft.Json NuGet 包添加到类库项目。

dotnet add src/Library/Library.fsproj package Newtonsoft.Json

添加Library投影到FSNetCore解决方案: 使用dotnet sln 添加命令:

dotnet sln add src/Library/Library.fsproj

运行dotnet build以生成项目。 在生成时,将还原未解析的依赖项。

使用dotnet new命令,创建一个控制台应用程序中的src名为应用程序的文件夹。

dotnet new console -lang F# -o src/App

运行上述命令后会生成以下目录结构:
└── FSNetCore ├── FSNetCore.sln └── src ├── App │ ├── App.fsproj │ ├── Program.fs └── Library ├── Library.fs └── Library.fsproj
内容替换为Program.fs文件使用以下代码:
open System
open Library

[<EntryPoint>]
let main argv =
    printfn "Nice command-line arguments! Here's what JSON.NET has to say about them:"

    argv
    |> Array.map getJsonNetJson
    |> Array.iter (printfn "%s")

    0 // return an integer exit code
添加对的引用Library使用的项目dotnet 添加引用。

dotnet add src/App/App.fsproj reference src/Library/Library.fsproj

添加App投影到FSNetCore解决方案: 使用dotnet sln add命令:
dotnet sln add src/App/App.fsproj

还原 NuGet 依赖项, dotnet restore (请参阅备注) 并运行dotnet build以生成项目。
将目录更改为src/App控制台项目并运行项目传递Hello World作为自变量:
cd src/App
dotnet run Hello World
你应看到以下结果:
Nice command-line arguments! Here's what JSON.NET has to say about them: I used to be Hello but now I'm ""Hello"" thanks to JSON.NET! I used to be World but now I'm ""World"" thanks to JSON.NET!

关注公众号获得技术支持

给作者留言

提交留言