Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
| Vlastnictví | Hodnota |
|---|---|
| Identifikátor pravidla | MSTEST0055 |
| Titul | Neignorujte návratovou hodnotu řetězcových metod. |
| Kategorie | Usage |
| Oprava je destruktivní nebo nedestruktivní | Non-breaking |
| Povoleno ve výchozím nastavení | Ano |
| Výchozí úroveň závažnosti | Výstraha |
| Představeno ve verzi | 3.11.0 |
| Existuje oprava kódu. | Ne |
Příčina
Volání string.Contains, string.StartsWith, nebo string.EndsWith je provedeno a jeho návratová hodnota je ignorována.
Popis pravidla
Tyto metody nemají žádné vedlejší účinky a ignorování návratového výsledku je vždy špatně. Je pravděpodobnější, že původním záměrem těchto volání je tvrzení, že jsou pravdivé.
Jak opravit porušení
Zachyťte a použijte návratovou hodnotu z řetězcových metod nebo použijte vhodnou metodu pro ověření.
Změňte například toto:
[TestMethod]
public void TestMethod()
{
string value = "Hello world";
value.StartsWith("Hello");
}
Na toto:
[TestMethod]
public void TestMethod()
{
string value = "Hello world";
Assert.IsTrue(value.StartsWith("Hello")); // or, Assert.StartsWith("Hello", value);
}
Kdy potlačit upozornění
Nepotlačujte upozornění z tohoto pravidla. Volání řetězcových metod bez použití jejich návratové hodnoty je vždy chyba nebo mrtvý kód.