[Tip,C#] protobuf 메시지 정의 나누어 배포하기 (내용추가)
View 11,697 | 작성일2019.09.23 16:59
관련링크
본문
프로젝트를 .net framework 로 할 경우 몇가지 수동 편집이 필요합니다.
(이전 글은 .net standard lib 이었습니다)
Data.Client
Data.Device
Data.Server
세 개의 Class Library 프로젝트를 만들었다고 치면
Properties\AssemblyInfo.cs 파일을 구별되고 이름을 변경해주고
csproj 파일에서도 해당 이름을 수정해준 뒤 같은 디렉토리에 옮겨 줍니다.
이제 솔루션에 하나의 프로젝트를 추가해주고 (Data.Client)
Nuget 에서 Google.protobuf 와 gRPC.tools 를 받아 설치해줍니다.
잠시 솔루션을 닫고 3개의 csproj 파일을 편집기(메모장) 으로 엽니다.
그리고 Data.Client 파일 상단과 하단에서 다음 부분을 찾아 Data.Device 와 Data.Server 에도 동일하게 넣어줍니다.
다시 솔루션을 열고 Data.Device 와 Data.Server 를 마저 추가해주고 proto 파일을 작성해서 셋팅해줍니다.
에러 없이 빌드되고 proto 파일 내용이 3개의 dll 모두 동일하게 나오면 완료입니다.
ps.
repo 를 다시 clone 하거나 packages 폴더를 지우고 다시 복원하는 경우 에러가 납니다.
(참조 트리에 노란 경고 표시가 주르륵..)
일단 제 경우엔 프로젝트를 개별적으로 선택해서 정리 -> 빌드 해주면 정리됬습니다.