Consulta de dapper dot net en F #

dapper f#

Pregunta

Estoy tratando de usar Dapper dot net en F # para realizar una consulta SQLite simple. Dapper devuelve una colección de objetos dinámicos: usarlos en C # es sencillo, pero por lo que entendí, F # no tiene una implementación dinámica de búsqueda de propiedades lista para usar.

Esto está funcionando, pero supongo que hay mejores formas de hacerlo sin recurrir a la reflexión:

let (?) x prop =
    let flags = BindingFlags.GetProperty ||| BindingFlags.InvokeMethod
    x.GetType().InvokeMember(prop, flags, null, x, [||])

let doQuery () =
    //...
    let conn = new SQLiteConnection (connString)
    conn.Open ()

    conn.Query("select first_name from customers")
        |> Seq.map (fun c -> c ? first_name)
        |> List.ofSeq

¿Cuál es la mejor manera de implementar el? operador en este caso?

Respuesta aceptada

Este hilo consiste en varias soluciones para su problema. Especialmente, FSharp.Interop.Dynamic está disponible en NuGet y listo para usar.



Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow