Empty string and array best practices in C#