C# - .NET 프로젝트에서 Resources.resx 파일 만들기 (리소스 파일 만들기)

반응형

개요

새로 생성한 C# Winform 프로젝트에서 Resources.resx 파일이 보이지 않는다.

나는 주로 자주 사용될 것 같은 문자열이나 이미지 등을 리소스 파일에 넣어두고 사용한다.

그런데 새 프로젝트에서는 갑자기 리소스 파일이 안보이니 당황스럽다.

c# properties 이름이 현재 컨텍스트에 없습니다

 

리소스를 사용하려고 하니 코드 자체에서도 에러가 발생한다.

그래서 빈 파일을 Resources.resx로 만들었더니 파일을 제대로 불러오지도 않는다.

<C# Winform 프로젝트에서 리소스 파일이 없는 디렉토리 구조>


리소스 파일이 왜 없을까?

결론부터 말하면,

리소스 파일( Resources.resx)은 닷넷 프레임워크에서 사용되는 리소스 파일이다.

 

.NET Framework 프로젝트에서는 Resources.resx 파일이 프로젝트 생성 시 함께 포함되지만

.NET 프로젝트에서는 리소스 파일이 함께 포함되지 않는다.

내가 예전에 작업했던 프로젝트는 닷넷 프레임워크 프로젝트였었고,

지금 만든 프로젝트는 닷넷 프로젝트라는 것이다.

 

리소스 파일이 닷넷 프로젝트에서는 기본적으로 제공 되지 않는 이유를 찾으려 해봤지만...

검색 능력의 한계로 제대로 된 이유를 찾지 못했다. 이 놈의 검색 능력;;

원래 ChatGPT의 말을 신뢰하는 편은 아니지만,

이에 대한 대답이 꽤나 설득력 있어서 한 번 나열해보겠다.

  • 모든 프로젝트가 리소스 파일을 필요로 하는 것이 아니기 때문에 강제하지 않는다. 다만, 요구 사항에 따라 리소스를 사용할 수 있도록 선택할 수 있다.
  • 프로젝트가 불필요한 리소스 파일을 가지지 않는 경우, 프로젝트 크기와 배포 가능한 크기를 줄여 경량화를 할 수 있다.
  • 불필요한 파일이 없으면 프로젝트 유지 보수 관리가 더 쉽다. 이는 프로젝트의 복잡성을 줄일 수 있다.

닷넷 프로젝트에서 리소스 파일을 사용하려면?

닷넷 프로젝트에서는 리소스 파일을 필요에 맞게 직접 추가해주어야 한다.

 

1. 프로젝트 우클릭 - 속성

<닷넷 프로젝트 우클릭 예시 화면>

 

2. 좌측의 '리소스' 탭 이동 - 어셈블리 리소스 만들기 또는 열기

<닷넷 프로젝트에서 리소스 파일 만드는 예시 화면>

 

리소스 파일이 생성된다.

<닷넷 프로젝트에서 Resources.resx 파일이 생성된 화면>


참고

반응형