Существует несколько способов сравнения строк. Есть ли выигрыш в производительности, делая один способ над другим?
Я всегда предпочитал сравнивать строки следующим образом:
string name = "Bob Wazowski";
if (name.CompareTo("Jill Yearsley") == 0) {
// whatever...
}
Но я нахожу, что мало кто это делает, и, если угодно, я вижу, что больше людей просто делают прямое сравнение, насколько мне известно, это самый худший способ сравнить строки. Я не прав?
Кроме того, имеет ли значение то, как сравнивать строки в запросах LINQ? Например, мне нравится делать следующее:
var results = from names in ctx.Names
where names.FirstName.CompareTo("Bob Wazowski") == 0
select names;
Но опять же, я вижу, что немногие люди делают подобные строки в своих запросах LINQ.