我有一个基于 http post 模板的 azure 函数。我将json从1个 Prop 扩展到3个。

let versionJ = json.["version"]
let customerIdJ = json.["customerId"]
let stationIdJ = json.["stationId"]
match isNull versionJ with

在所有三个中检查 null 的最佳方法是什么?使用元组?
match isNull versionJ, isNull customerIdJ, isNull stationIdJ with

最佳答案

这取决于您要确切检查什么。
如果要查看至少有 1 个 null,则可以执行以下操作:

let allAreNotNull = [versionJ; customerIdJ; stationIdJ]
                    |> List.map (not << isNull)
                    |> List.fold (&&) true

如果您想检查所有这些都是空值,您可以执行以下操作:
let allAreNull = [versionJ; customerIdJ; stationIdJ]
                 |> List.map isNull
                 |> List.fold (&&) true

更新

你也可以用 List.forall 替换它:
[versionJ; customerIdJ; stationIdJ]
|> List.forall (not << isNull)


[versionJ; customerIdJ; stationIdJ]
|> List.forall isNull

关于f# - 使用 F# 进行多字段验证(在 azure 函数中),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41859172/

10-11 12:27