¿Cómo obtener un bigint a una propiedad de objeto larga desde SQL Server usando Dapper?

asp.net c# dapper sql-server

Pregunta

Tengo un bigint en mi tabla y cuando intento hacer una selección usando Dapper, no está funcionando. Encontré un consejo que decía lanzar al numérico, pero eso arroja un error de lanzamiento inválido.

¿Cuál es el molde correcto para usar con dapper?

Respuesta aceptada

Solo escriba como long :

    public void TestNakedBigInt()
    {
        long foo = 12345;
        var result = connection.Query<long>("select @foo", new {foo}).Single();
        foo.IsEqualTo(result);
    }

    public void TestBigIntMember()
    {
        long foo = 12345;
        var result = connection.Query<WithBigInt>(@"
declare @bar table(Value bigint)
insert @bar values (@foo)
select * from @bar", new {foo}).Single();
        result.Value.IsEqualTo(foo);
    }
    class WithBigInt
    {
        public long Value { get; set; }
    }


Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué