Typ typename <> omezení obecného parametru není kompatibilní se specifikací CLS.
Obecný typ je označen jako <CLSCompliant(True)>
, ale omezení na jeden z jeho parametrů typu určuje typ, který je označen jako <CLSCompliant(False)>
, není označen nebo není kvalifikovat, protože se jedná o nekompatibilní typ.
Aby byl typ kompatibilní s jazykovou nezávislostí a komponentami cls (Language-Independent Components ), musí používat pouze typy kompatibilní se specifikací CLS. To platí také pro omezení parametrů typu obecného typu.
Následující datové typy jazyka Visual Basic nedodržují předpisy CLS:
Když použijete CLSCompliantAttribute atribut na programovací prvek, nastavíte parametr atributu isCompliant
na buď True
nebo False
na označení dodržování předpisů nebo nedodržování předpisů. Pro tento parametr neexistuje výchozí hodnota a je nutné zadat hodnotu.
Pokud se nevztahujete CLSCompliantAttribute na prvek, považuje se za nevyhovující.
Ve výchozím nastavení je tato zpráva upozorněním. Informace o skrytí upozornění nebo zpracování upozornění jako chyb naleznete v tématu Konfigurace upozornění v jazyce Visual Basic.
ID chyby: BC40040
Pokud obecný typ musí přijmout parametr typu omezený tímto konkrétním typem, odeberte CLSCompliantAttribute. Typ nemůže být kompatibilní se specifikací CLS.
Pokud obecný typ musí být kompatibilní se specifikací CLS, změňte typ tohoto omezení na nejbližší typ kompatibilní se specifikací CLS. Pokud
UInteger
například nepotřebujete rozsah hodnot nad 2 147 483 647, může být možné použítInteger
. Pokud potřebujete rozšířený rozsah, můžete nahraditUInteger
.Long
Zpětná vazba k produktu .NET
.NET je open source projekt. Vyberte odkaz pro poskytnutí zpětné vazby: