ILayer, IField 등과 같은 ArcObject를 저장하기 위해 .NET에서 제네릭 형식을 사용하는 의미는 무엇입니까?
이러한 종류의 값을 사용할 때 컴파일러에서 경고가 표시됩니다.
public class Foo
{
private List<ILayer> fooLayers;
public List<ILayer> FooLayers
{
get { ... }
set { ... }
}
}
경고는 다음과 같습니다.
경고 15 형식 라이브러리 내보내기 경고 처리 'ArcMemorialCore.Topography.IMemorialDocument.set_ProfessionalsEnvolved (value), ArcMemorialCore'. 경고 : 형식 라이브러리 내보내기에서 서명에서 일반 형식 인스턴스가 발생했습니다. 일반 코드는 COM으로 내보낼 수 없습니다. ArcMemorialCore
내 관심사는 경고의 존재뿐만 아니라 좋은 디자인 관행, 성능 등입니다.
어떤 경고를 받고 있습니까?
—
리드 경찰
질문에 컨텍스트를 추가하십시오. 객체 사용 방법에 대해 더 알아야합니다. 내가 아는 한 ArcObjects 클래스 또는 이와 같은 인터페이스를 사용하는 데 본질적인 문제는 없습니다.
—
Keith G
경고는 무엇을 말합니까?
—
휴고 에스트라다
오류 또는 경고가 나타 납니까?
—
Jay Cummins
경고. 잘 컴파일됩니다. 저의 관심사는 경고가 아닙니다. 경고는 다음과 같습니다. 경고 15 Type 라이브러리 내보내기 경고 처리 'ArcMemorialCore.Topography.IMemorialDocument.set_ProfessionalsEnvolved (value), ArcMemorialCore'. 경고 : 형식 라이브러리 내보내기에서 서명에서 일반 형식 인스턴스가 발생했습니다. 일반 코드는 COM으로 내보낼 수 없습니다.
—
George Silva