CA1420: Vlastnost, typ nebo atribut vyžaduje zařazování za běhu
Vlastnost | Hodnota |
---|---|
ID pravidla | CA1420 |
Název | Vlastnost, typ nebo atribut vyžaduje zařazování za běhu. |
Kategorie | Vzájemná funkční spolupráce |
Oprava způsobující chybu nebo chybu způsobující chybu | Narušující |
Povoleno ve výchozím nastavení v .NET 9 | Jako upozornění |
Příčina
Používá se funkce kódu, která vyžaduje zařazování za běhu a zařazování za běhu je explicitně zakázané.
Popis pravidla
Použití funkcí, které vyžadují zařazování za běhu při zakázání zařazování modulu runtime, způsobí výjimky za běhu.
Jak opravit porušení
Povolte zařazování za běhu nebo odeberte kód, který vyžaduje zařazování za běhu.
Kdy potlačit upozornění
Nepotlačujte upozornění z tohoto pravidla.
Příklad
Následující fragment kódu ukazuje porušení ca1420:
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
[assembly: DisableRuntimeMarshalling]
class C
{
// Violates rule CA1420.
[DllImport("NativeLibrary", SetLastError = true)]
public static extern void MyMethod ();
}
Imports System.Runtime.InteropServices
Imports System.Runtime.CompilerServices
<Assembly: DisableRuntimeMarshalling>
Class C
' Violates rule CA1420.
<DllImport("NativeLibrary", SetLastError:=True)>
Public Shared Sub MyMethod()
'...
End Sub
End Class
Chcete-li opravit porušení, odeberte na DisableRuntimeMarshallingAttribute sestavení.
Spolupracujte s námi na GitHubu
Zdroj tohoto obsahu najdete na GitHubu, kde můžete také vytvářet a kontrolovat problémy a žádosti o přijetí změn. Další informace najdete v našem průvodci pro přispěvatele.