Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
| Eigenschap | Waarde | 
|---|---|
| Regel-ID | IDE0070 | 
| titel | Gebruik System.HashCode.Combine | 
| Categorie | Stijl | 
| subcategorie | Taalregels (voorkeuren op expressieniveau) | 
| Toepasselijke talen | C# en Visual Basic | 
Overzicht
Deze regel raadt het gebruik van de System.HashCode.Combine methode aan om een hash-code te berekenen in plaats van aangepaste hashcodeberekeningslogica te gebruiken.
Opties
Deze regel heeft geen gekoppelde opties voor codestijl.
Voorbeeld
class B
{
    public override int GetHashCode() => 0;
}
class C : B
{
    int j;
    // Code with violations
    public override int GetHashCode()
    {
        // IDE0070: GetHashCode can be simplified.
        var hashCode = 339610899;
        hashCode = hashCode * -1521134295 + base.GetHashCode();
        hashCode = hashCode * -1521134295 + j.GetHashCode();
        return hashCode;
    }
    // Fixed code
    public override int GetHashCode()
    {
        return System.HashCode.Combine(base.GetHashCode(), j);
    }
}
Een waarschuwing onderdrukken
Als u slechts één schending wilt onderdrukken, voegt u preprocessorrichtlijnen toe aan uw bronbestand om de regel uit te schakelen en vervolgens opnieuw in te schakelen.
#pragma warning disable IDE0070
// The code that's violating the rule is on this line.
#pragma warning restore IDE0070
Als u de regel voor een bestand, map of project wilt uitschakelen, stelt u de ernst ervan in op none in het configuratiebestand.
[*.{cs,vb}]
dotnet_diagnostic.IDE0070.severity = none
Als u alle regels voor de codestijl wilt uitschakelen, stelt u de ernst voor de categorie Style in op none in het configuratiebestand.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Zie Codeanalysewaarschuwingen onderdrukkenvoor meer informatie.