这很简单,我的函数返回Group list
但我尝试赋值的值是Group list option
类型我如何将Group list
转换为Group list option
}。
这是我的代码
let ParseGroupList jsonData =
let parsed = GroupProvider.Parse(jsonData).JsonValue.AsArray()
|> List.ofArray
let groups = List.map (fun grp -> ParseGroup(grp.ToString())) parsed
groups
let ParseUser jsonData =
let parsed = UserProvider.Parse jsonData
let mutable user = new User()
user.ID <- parsed.Id
user.Firstname <- parsed.Firstname
user.Lastname <- parsed.Lastame
user.Emailaddress <- parsed.Emailaddress
user.Active <- parsed.Active
user.AllGroupsCount <- parsed.Groupcount
match parsed.Groups with
| Some groups -> user.Groups <- ParseGroupList groups <= This doesn't work
| None -> user.Groups <- None
user
and public User() =
let mutable id = 0
let mutable firstname = ""
let mutable lastname = ""
let mutable emailaddress = ""
let mutable active = false
let mutable groupscount = Option<int>.None
let mutable groups = Option<Group list>.None
member this.ID with get() = id and set(value) = id <- value
member this.Firstname with get() = firstname and set(value) = firstname <- value
member this.Lastname with get() = lastname and set(value) = lastname <- value
member this.Emailaddress with get() = emailaddress and set(value) = emailaddress <- value
member this.Active with get() = active and set(value) = active <- value
member this.AllGroupsCount with get() = groupscount and set(value) = groupscount <- value
member this.Groups with get() = groups and set(value) = groups <- value
我使用选项类型的原因是JSON基本上使用一些可选属性进行解析。
答案 0 :(得分:2)
Some(x)
将执行此操作并将x
转换为选项类型