2017-11-29 1 views
0

Google ProtoBuf 파일을 처음 사용합니다. 나는 Google 프로토콜 파일에 메시지 패킷을 가지고있다.속성 또는 인덱서 googleprotobuf RepeatedField를 할당 할 수 없습니다 - 읽기 전용

message AvailabilityOfLockersResp{ 
    uint32 NumberOfAvailableLockers; 
    repeated uint32 lockerIds = 1; 
} 

내가Protoc.exe를 사용하여 해당 ProtoBuf 클래스를 생성하고 추가 한 나의 .NET 프로젝트 내부에 생성 된 C# 클래스 파일. 나는이 lockerIds 필드 나는 아래의 오류가 점점 오전에 값을 할당 할 때

내 문제이다.

enter image description here

는 읽기 전용 필드의 저를 보이고있다. 그러나이 필드에 값을 지정하려고합니다. 그래서, 그것을 달성하기 위해, 나는 어떤 수정을해야합니까? 내가 틀렸다면 나를 바로 잡으세요.

미리 감사드립니다.

답변

1

위의 질문에 대한 답을 찾았습니다.

 List<uint> lockerIds = new List<uint>(); 

     ProtoPacket protoPacketResponse = new ProtoPacket 
     {    
      AvailabilityOfLockersResp = new AvailabilityOfLockersResp { NumberOfAvailableLockers = (uint)lockerIds.Count() }//LockerIds = lockerIds, 
     }; 

새로운 인스턴스의 외부, 나는 LockerIds 아래 등으로 값을 할당 한

protoPacketResponse.AvailabilityOfLockersResp.LockerIds.AddRange(lockerIds); 
관련 문제