7

目前在 Azure Functions 中使用 F# 的最佳方式是什么?我希望我的函数同时具有输入和输出绑定(例如到队列或事件中心)

到目前为止我发现了什么:

有没有办法使用带有输入和输出的 F# 函数并将其作为 Azure 函数直接托管?类似于 C#Run方法的东西?

理想情况下,输入和输出应该是强类型的:对象、记录或有区别的联合。

4

2 回答 2

6

模板仅作为起点- 您可以在门户“集成”选项卡中轻松添加额外的输入/输出绑定。例如,如果您添加一个名为result并绑定到 blob path的新 Blob 输出"test-output/%rand-guid%",则可以编写如下脚本来写入 blob:

open System
open System.IO

let inputPath = Environment.GetEnvironmentVariable("input")
let input = File.ReadAllText(inputPath)
let message = sprintf "F# script processed queue message '%s'" input
System.Console.Out.WriteLine(message)

let resultPath = Environment.GetEnvironmentVariable("result")
File.WriteAllText(resultPath, input);

关于对 F# 的更强类型的“一流”支持,正如我在您链接到的论坛帖子中提到的那样,我们正在努力解决它:) 目前,F# 与所有其他非 proc 脚本类型一起在桶中,其中如上所示,绑定管道内外的通信机制是通过环境变量进行的。

于 2016-04-09T16:22:55.480 回答
6

现在 F# 是原生的!

感谢包括 Don Syme 和 Tomas Petricek 在内的 F# 团队的出色工作,我们很高兴地宣布,我们终于在 Azure Functions 中以一流的方式支持 F#。

https://blogs.msdn.microsoft.com/appserviceteam/2016/09/01/azure-functions-0-5-release-august-portal-update/

于 2016-09-02T07:35:26.980 回答