MongoDb 和 F#:如何 select 不同的值?
MongoDb and F#: How to select distinct values?
我正在使用最新的(在撰写本文时)版本 (2.8) 的 C# MongoDb 驱动程序。
我在 F# 中使用它。
我想 select 集合中某个字段的不同值。
从 开始,以下内容不起作用:
let client = new MongoClient(connString)
let db = client.GetDatabase("AirQuality")
let col = db.GetCollection<ReadingValue>("ReadingValue")
let res = col.DistinctAsync<string>("SensorName","{}")
类型 string
与类型 FieldDefinition<ReadingValue,string>
不兼容。
从this answer开始,下面的也不行
let fd : FieldDefinition<ReadingValue, string> = "" :> FieldDefinition<ReadingValue, string>
在 C# 中,您可以将字符串隐式转换为 FieldDefinition<T>
(class implements implicit operator). Since types conversion works in a different way in F# you can use StringFieldDefinitionClass
let field = new StringFieldDefinition<ReadingValue, string>("SensorName")
let result = col.Distinct<string>(field, Builders<ReadingValue>.Filter.Empty)
我正在使用最新的(在撰写本文时)版本 (2.8) 的 C# MongoDb 驱动程序。 我在 F# 中使用它。 我想 select 集合中某个字段的不同值。
从
let client = new MongoClient(connString)
let db = client.GetDatabase("AirQuality")
let col = db.GetCollection<ReadingValue>("ReadingValue")
let res = col.DistinctAsync<string>("SensorName","{}")
类型 string
与类型 FieldDefinition<ReadingValue,string>
不兼容。
从this answer开始,下面的也不行
let fd : FieldDefinition<ReadingValue, string> = "" :> FieldDefinition<ReadingValue, string>
在 C# 中,您可以将字符串隐式转换为 FieldDefinition<T>
(class implements implicit operator). Since types conversion works in a different way in F# you can use StringFieldDefinitionClass
let field = new StringFieldDefinition<ReadingValue, string>("SensorName")
let result = col.Distinct<string>(field, Builders<ReadingValue>.Filter.Empty)