Я предлагаю вам использовать:
// There's no point in casting it in every if statement
string selectedItem = (string) cmbOperations.SelectedItem;
if (selectedItem.Equals("NonPrimaryKeyTables",
StringComparison.CurrentCultureIgnoreCase))
{
...
}
Выбор правильного сравнения строк может быть сложным. См. Эту статью MSDN для получения дополнительной информации.
Я не предложил бы использовать Compare
, как предлагали другие, просто потому, что это неправильный акцент - Compare
предназначен для проверки того, в каких строках порядка должны появляться отсортированы. Это побочный продукт, позволяющий вам проверять равенство, но это не главная цель. Использование Equals
показывает, что все, что вас волнует, это равенство - если две строки не равны, вам все равно, что будет первым. Использование Compare
будет работать , но это не заставит ваш код выражать себя настолько ясно, насколько это возможно.