¿Es posible recorrer los argumentos de una función para verificar si alguno de ellos es nulo (o verificarlos mediante otra función personalizada)? algo como esto:C# - Uso de foreach para recorrer los argumentos del método
public void test (string arg1, string arg2, object arg3, DataTable arg4)
{
foreach (var item in argus)
{
if(item == null)
{
throw;
}
}
// do the rest...
}
¿cuál es la palabra clave correcta para "Argus"? Sé que esto es posible gracias a un poco más si la declaración pero en busca de una manera más rápida ...
Creo que tendrás que mirar en la reflexión. Lo que estás tratando de hacer no parece valer la pena en comparación con el enfoque directo (que es bastante fácil con cortar y pegar). – hatchet
Esto es posible hacerlo de manera directa en lenguajes dinámicos y en idiomas tipados estáticamente con soporte de metaprogramación. Por ejemplo, Nemerle tiene la palabra clave NotNull en su diseño predeterminado por biblioteca de contrato. –
Recomiendo encarecidamente comprobar cada uno individualmente y arrojar una ArgumentNullException con el nombre del parámetro específico. Puede escribir cada cheque y lanzar en una sola línea, minimizando la hinchazón del código. Esto proporciona retroalimentación más específica y no toma mucho tiempo para escribir. Puede usar un fragmento si desea ahorrar tiempo y la mayoría de las herramientas de productividad tienen una forma de insertar este código (por ejemplo, ReSharper puede insertar las comprobaciones con unas pocas pulsaciones de teclado por parámetro). Incluso con 'vanilla' Visual Studio, Autocompletar hace que escribir esto a mano requiera un mínimo de teclas. –