IsNot Nothing
es muy común, pero es una doble negación = o¿Agregar una palabra clave a VB.net? ("Existe" vs "IsNot Nada")
Me gustaría utilizar Exists
lugar. ¿De alguna manera puedo agregar una palabra clave a mi vocabulario de VB?
Por ahora, escribí una extensión que agrega _Exists()
como una propiedad para cada objeto. Lo uso con frecuencia, pero preferiría una palabra clave real.
<HideModuleName()>
Public Module CustomExtensions
''' <summary>
''' Returns <c>True</c> if [object] is not <c>Nothing</c>; otherwise <c>False</c>.
''' </summary>
<System.Runtime.CompilerServices.Extension()>
Public Function _Exists(obj As Object) As Boolean
Return obj IsNot Nothing
End Function
End Module
utilizo exclusivamente Visual Studio 2010, por lo que si podría engañar a VS en la conversión de mi fraseología personalizada en la sintaxis estándar, que trabajaría para mí.
Gracias!
Es una buena idea usar un método de extensión en lugar del doble negativo IsNot Nothing. Me pregunto: ¿por qué el guión bajo? Además, tal vez HasValue sería un nombre más agradable; es el nombre que Microsoft usa para el método que verifica si un objeto Nullable tiene un valor. –
Sí, debatí sobre eso, pero terminé usando el guión bajo porque me gusta la distinción visual entre 'Existe' y el objeto real que se está probando, particularmente en casos donde el objeto ya contenía una serie de puntos (por ejemplo, una propiedad de propiedad de un objeto). De hecho, tengo otra extensión llamada 'HasValue' que uso para cadenas, que es igual a' Not String.IsNullOrEmpty'. Sin embargo, un buen punto sobre el método incorporado de Microsoft, no lo había considerado. –
Mis 2 centavos: no cambian el idioma. El lenguaje es un modo de comunicación y no puedes comunicarte si creas tu propio dialecto que nadie más conoce. ¿Qué pasa si recibió código con la palabra clave 'Reset'? Qué significa eso? ¿Qué hace? ¿Cómo lo agregarías a Visual Studio? –