[.net] LibraryImport 인텔리센스 오류 – 일단 컴파일하라

최신 버전의 .넷은 DllImport 대신 LibraryImport를 쓰라고 경고한다.

[LibraryImport("kernel32.dll")] private static partial uint GetCurrentProcessorNumber();

위와 같이 access modifier와 static partial을 써야 한다. access modifier는 생략할 수 없다.

static이므로 더 빠르고 partial이므로 눈에 보이지 않는 어딘가에서 따로 작업이 이뤄지는 걸 알 수 있다. 컴파일을 하면 추가 코드가 자동으로 만들어진다. 이게 문제다.

컴파일을 하여 자동으로 implementation code가 생기기 전에는 인텔리센스가 오류로 인식한다. 이를 무시하고 컴파일을 하면 문제는 해결된다.