string.Contains определяет, содержит ли данная строка аргумент, будь то один символ или подстрока, что вы хотите найти.
Например, ("Hello World").Contains("Hello")
, а также ("Hello World").Contains('e')
будут иметь значение true, поскольку данная строка (в этом случае «Hello World») содержит данный аргумент в обоих случаях. Подробнее о string.Contains here.
В вашем случае, однако, я понимаю, вы просто пытаетесь определить, является ли данная строка является звездочка, а не если он содержит один. В этом случае string.Contains не требуется! Просто сделайте простое сравнение, например: dr["DomainName"].ToString() == "*"
Исправьте меня, если я неверно истолковал ваш вопрос и не стесняюсь прокомментировать этот ответ, если у вас есть еще вопросы.
erm, 'dr [" DomainName "]. ToString() ==" * "' – Jodrell
Если вы имеете в виду, что строка одна или несколько * и ничего больше - тогда проверьте это: http://stackoverflow.com/ Вопросы/16027475/c-sharp-define-if-all-characters-in-a-string-are-the-same- – PaulF
Вы ищете * во всей строке, используя «Contains», так что это будет быть верным, когда строка содержит * даже один раз (по крайней мере) вместе с другими символами. Но если вы хотите проверить, что строка просто * (только), вы должны использовать решение, отправленное jodrell. В любом случае, почему этот вопрос ниспровергнут? Мне любопытно. – RelatedRhymes