Jakie są konsekwencje używania typów ogólnych w .NET do przechowywania ArcObjects, takich jak ILayer, IField itp.?
Kompilator generuje ostrzeżenie podczas korzystania z tego rodzaju wartości
public class Foo
{
private List<ILayer> fooLayers;
public List<ILayer> FooLayers
{
get { ... }
set { ... }
}
}
Oto ostrzeżenie:
Ostrzeżenie 15 Przetwarzanie ostrzeżenia eksportera biblioteki typów „ArcMemorialCore.Topography.IMemorialDocument.set_ProfessionalsEnvolved (wartość), ArcMemorialCore”. Ostrzeżenie: eksporter biblioteki typów napotkał wystąpienie typu ogólnego w podpisie. Kod ogólny nie może być eksportowany do COM. ArcMemorialCore
Moje obawy dotyczą nie tylko istnienia ostrzeżenia, ale dobrych praktyk projektowych, wydajności itp.