Ostrzeżenie kompilatora (poziom 1) CS3024
Typ ograniczenia "type" nie jest zgodny ze specyfikacją CLS.
Kompilator wydaje to ostrzeżenie, ponieważ użycie typu niezgodnego ze specyfikacją CLS jako ograniczenia typu ogólnego może uniemożliwić użycie kodu napisanego w niektórych językach do korzystania z klasy ogólnej.
- Użyj typu zgodnego ze specyfikacją CLS dla ograniczenia typu.
Poniższy przykład generuje plik CS3024 w kilku lokalizacjach:
// cs3024.cs
// Compile with: /target:library
[assembly: System.CLSCompliant(true)]
[type: System.CLSCompliant(false)]
public class TestClass // CS3024
{
public ushort us;
}
[type: System.CLSCompliant(false)]
public interface ITest // CS3024
{}
public interface I<T> where T : TestClass
{}
public class TestClass_2<T> where T : ITest
{}
public class TestClass_3<T> : I<T> where T : TestClass
{}
public class TestClass_4<T> : TestClass_2<T> where T : ITest
{}
public class Test
{
public static int Main()
{
return 0;
}
}
Opinia o produkcie .NET
.NET to projekt typu open source. Wybierz link, aby przekazać opinię: