Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Usuwanie niepotrzebnego
| Majątek | Wartość |
|---|---|
| Identyfikator reguły | IDE0380 |
| Tytuł | Usuwanie niepotrzebnego unsafe modyfikatora |
| Kategoria | Styl |
| Podkategorii | Niepotrzebne reguły kodu (preferencje modyfikatora) |
| Zastosowane języki | C# |
| Options | Żaden |
Przegląd
Ta reguła identyfikuje bloki kodu, metody, typy lub inne deklaracje oznaczone modyfikatorem unsafe , który w rzeczywistości nie zawiera żadnych niebezpiecznych operacji. Modyfikator unsafe umożliwia korzystanie ze wskaźników i innych niebezpiecznych funkcji kodu, ale jeśli te funkcje nie są używane, modyfikator jest niepotrzebny i powinien zostać usunięty w celu zapewnienia przejrzystości kodu.
Example
// Code with violations.
// Unnecessary, no unsafe operations.
unsafe class MyClass
{
public void Method()
{
var x = 5;
}
}
// Unnecessary, no unsafe operations.
unsafe void ProcessData(int value)
{
Console.WriteLine(value);
}
// Fixed code.
class MyClass
{
public void Method()
{
var x = 5;
}
}
void ProcessData(int value)
{
Console.WriteLine(value);
}
// Example where 'unsafe' is needed.
unsafe class ValidUsage
{
int* pointer; // Pointer type requires 'unsafe'.
}
Pomijanie ostrzeżenia
Jeśli chcesz pominąć tylko jedno naruszenie, dodaj dyrektywy preprocesora do pliku źródłowego, aby wyłączyć, a następnie ponownie włączyć regułę.
#pragma warning disable IDE0380
// The code that's violating the rule is on this line.
#pragma warning restore IDE0380
Aby wyłączyć regułę dla pliku, folderu lub projektu, ustaw jego ważność na none w pliku konfiguracji.
[*.{cs,vb}]
dotnet_diagnostic.IDE0380.severity = none
Aby wyłączyć wszystkie reguły stylu kodu, ustaw ważność dla kategorii Style na none w pliku konfiguracji.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Aby uzyskać więcej informacji, zobacz Jak pominąć ostrzeżenia dotyczące analizy kodu.