gpt4 book ai didi

c# - 无法分配 RepeatedField 类型的属性或索引器 — 它是只读的

转载 作者:行者123 更新时间:2023-12-02 02:36:14 25 4
gpt4 key购买 nike

我是 Google ProtoBuf 文件的新手。我在 ProtoBuf 文件中有以下消息。

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

我已使用 protoc.exe 生成了相应的 ProtoBuf C# 类,并将生成的 C# 类文件添加到我的 .NET 项目文件中。

当我为生成的 LockerIds 字段分配值时,出现错误“无法分配属性或索引器“AvailabilityOfLockersResp.LockerIds”——它是只读的”:

screenshot of the error as shown in Visual Studio

它告诉我这是一个只读字段。但是,我想为该字段分配一个值。如何向该字段添加内容?

最佳答案

我找到了我上面提出的问题的答案。

        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);

关于c# - 无法分配 RepeatedField 类型的属性或索引器 — 它是只读的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47556250/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com