hay en el operador en SQLC# analógico para SQL en el operador
SELECT * FROM MyTable WHERE id IN (1, 2, 3, 4, 5)
¿Hay sintaxis similar en C#, quiero decir
if(variable in (1, 2, 3, 4, 5)){
}
hay en el operador en SQLC# analógico para SQL en el operador
SELECT * FROM MyTable WHERE id IN (1, 2, 3, 4, 5)
¿Hay sintaxis similar en C#, quiero decir
if(variable in (1, 2, 3, 4, 5)){
}
No es buena pero se puede escribir por sí mismo como un método de extensión:
public static class Extensions
{
public static bool In<T>(this T value, params T[] items)
{
return items.Contains(value);
}
}
if (v.In(1,2,3,5)) { /* do stuff */ }
Yo no lo he probado, pero debe ser bueno.
ACTUALIZACIÓN: Como lo sugirió OP, he corregido algunos errores tipográficos.
wow, esto es realmente fresco He corregido un poco public static bool En
Gracias. Encantado de ayudar. – pblasucci
Puede tener
int[] data = {1, 2, 3, 4, 5};
if(data.Contains(variable))
{
}
Este realy obras, pero en mi humilde respuesta de pblasucci opinión es más elegante. –
Si está usando .NET 3.5 o posterior, entonces puede usar Contains
:
if (new[] { 1, 2, 3, 4, 5 }.Contains(variable))
{
// do something
}
new int[]{1,2,3,4,5}.Contains(variable)
Es bastante fácil juntar una extensión.
public static bool In<T>(this T value, params T[] items) where T : IEquatable<T>
{
foreach (var item in items)
{
if (value.Equals(item))
{
return true;
}
}
return false;
}
podía comprender la pregunta es, ¿cuál es la manera más fácil de hacer tal cosa –