La cláusula "IN" de dapper no funciona con múltiples valores

dapper

Pregunta

Guión:

Tengo una propiedad de cadena en mi modelo que contiene los ID de una MultiSelectList @Html.ListBox . Si selecciono dos elementos de la lista, el valor de mi propiedad se verá así 0100,0500 .

El problema:

Dapper where cláusula solo funcionará con un solo valor:

CODE IN (@SomeCode) // for example, 0100 or 0500 returns results
CODE IN (@SomeCode) // 0100,0500 does not return results.

Respuesta popular

Eso es porque no necesita decirle a Dapper que use paréntesis () . Lo hará bien por sí mismo. Prueba esto:

var codes = new List<string> { "0100","0500"};
var sql = "select * from SomeTable where CODE IN @codes";
var items = connection.Query(sql, new { codes });


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é