更新时间:2023-02-09 17:13:57
此处的窍门是对接口进行编程,而不是对实现进行编程.因此,请使用接口作为通用类型参数,而不是具体类型.
The trick here is to program to interfaces instead of implementations. So use an interface as the generic type parameter, instead of a concrete type.
open AdysTech.InfluxDB.Client.Net
open System.Collections.Concurrent
let events = ConcurrentQueue<IInfluxDatapoint>()
let event1 = InfluxDatapoint<IInfluxValueField>()
let field1a = InfluxValueField(42.99)
let field1b = InfluxValueField("a message")
let event2 = InfluxDatapoint<IInfluxValueField>()
let field2a = InfluxValueField(0.05)
let addEvents () =
event1.Fields.Add("amountRequestedUSD", field1a)
event1.Fields.Add("message", field1b)
events.Enqueue(event1)
event2.Fields.Add("someDouble", field2a)
events.Enqueue(event2)