Using C# and .NET 3.5, what’s the best way to handle this situation. I have hundreds of fields to compare from various sources (mostly strings). Sometimes the source returns the string field as null and sometimes as empty. And of course, sometimes there is text in the fields. My current comparison of strA != strB isn’t cutting it because strA is null and strB is “”, for example. I know I could do the string.IsNullOrEmpty which results in a double comparison and some ugliness. Is there a better way to handle this? I thought extension methods, but you can’t extend operators.
I guess I’m looking for a sexy way to do this.
Since you’ve got hundreds of comparisons to do, it sounds like you want a single function to call so that you can reduce the clutter and repetition in your code. I don’t think there is a built-in function to do a null/empty string/comparison check all in one, but you could just make one yourself:
Then you could just use a single call to your function for each comparison:
This approach is also easier to expand if you later find that you need to worry about additional situations, such as ignoring whitespace at the beginning or ending of strings; you can then just add more logic to your function to do some trimming or whatever and you won’t have to make any modifications to the hundreds of lines of code calling your function.