作为Google protobuf二进制序列化格式的独立实现,protobuf-net以常见的.NET编码样式处理问题空间,但保留了高性能,密集输出和跨平台的互操作性。
我可以找到很多关于如何从 protobuf 消息生成 C# 模型的资源(它甚至内置于 Grpc.AspNetCore 包中),但反之则不然。 我创建了一个 Blazor WebAssembly
Google protobuf 3:弃用了某个字段,但无法删除依赖项?
我有一个依赖于 proto B 的 proto A。然后我弃用了 protoB 字段: 导入“protoB.proto”; 消息原型A { 字符串赋值状态 = 1; protoB proto_b = 2 [已弃用 = true]; } 我愿意
BigQuery Storage Write API C# 如何强制发送/序列化默认值
我正在使用 BigQuery Storage Write API (C# net6)。 BigQuery Storage Write API 使用 grpc/protobuf 协议将数据发送到 BigQuery。 Protobuf(默认情况下)不会序列化/发送默认值(例如 0 表示
我正在 Unity3d 中使用 mumble 编写 voip 客户端代码(c# 脚本),现在我能够成功连接到任何 mumble 公共服务器。但是当我尝试反序列化 UDP 隧道时,我得到了很多
无法使用 AddCodeFirstGrpcClient 和 WebApplicationFactory 测试代码优先 gRPC 服务
我正在尝试利用 Protobuf-net 的客户端工厂方法 AddCodeFirstGrpcClient 使用 WebApplicationFactory 在测试上下文中创建客户端。 问题在于...
与protobuf-net.grpc(NET48 NET8)进行进程间通信
我正在尝试使用protobuf-net.grpc在.net框架(4.8)和.net(8)之间建立进程间通信。 .net 8 中客户端/服务器之间的通信按照指令进行...
使用 protobuf-net 时,空字符串反序列化为空字符串
我正在使用 protobuf-net 来序列化和反序列化我的消息。我的消息还包含可以为空的字符串。然而,当我在另一侧反序列化它们时,我得到空字符串(“”)。
想象一下以下代码示例: [合约原型] [ProtoIninclude(1, typeof(ExampleState))] 公共抽象类 BaseState { [原型成员(2)] 公共T模型{获取;放; } [
我是 Protobuf.net 的新手, 我们有很多类,它是与父类继承的,有时是多级继承的。 我们不能在任何地方添加 [ProtoIninclude()] 。 我不知道我们想...
Protobuf-net 错误:类型不是预期的,无法推断出合约:BlockHeader
尝试通过遵循此线程以及其他来源的信息来使 openstreetmap pbf 文件的反序列化正常工作: Protobuf-net 反序列化开放街道地图 我现在...
我有一个 .proto 文件,传统上我一直将其与 protogen.exe 一起使用来为相关类生成 .cs 文件。生成的类实现了 Protobuf.IExtensible。然而,我现在需要
新 MemoryStream 上的 protobuf.net 中存在无效的线路类型错误
我正在尝试解析从外部服务接收到的 protobuf 消息。我知道这些数据是有效的 protobuf 消息,并且我知道在将其发送到
我有一个正在转换的 C# GRPC 库,我有复杂的 protobuf-net 对象(在 C# 中定义),使用继承等功能。如何将这些对象转换为本机 .proto 文件?如果可以的话...
使用protobuf-net.Grpc生成通用服务的.proto文件
我正在尝试生成此结构的.proto: - 楷模 - 基础模型 [数据合同] 公共抽象类基类 { [原型成员(1)] 公共字符串 Id { 获取;放; } [原型成员(2,
如何使用 Azure 身份验证确保代码优先 gRPC 端点的安全?
我正在构建一个微服务。我有一些由 Microsoft Azure 生成的 JWT 保护的工作 REST 端点。以下是令牌的验证方式: 建造者服务 .添加身份验证(
导入“google/protobuf/Timestamp.proto”未找到或有错误。在 .net 8 中
当我跑步时: dotnet 发布 -c 发布 -o 输出 我得到: google/protobuf/Timestamp.proto:错误:找不到文件。 [/app/StorageService.GRPC.Server/StorageService.GRPC.Server.csproj] 原型/候选者......
从 Proto 文件生成的 Typescript 文件无法解决错误
从 proto 生成 typescript 文件后,我在使用 TypeScript 项目的 ReactJs 中遇到无法解析错误。一切看起来都很完美。看一下截图 我的错误截图是: ...
如何使用装饰器从 C# 对象生成 your-class.proto
我正在使用 protobuf-net 来序列化/反序列化数据以与我的 Kafka 集群一起使用。 有没有办法使用如下装饰器从 C# 类生成 class-name.proto ? 谢谢 我...
时间数据“2024-05”与格式“%Y-%m-%dT%H:%M:%S”(Protobuff)不匹配
我正在从 json 创建一个 protobuffer,json 结构如下所示: { “回答更新请求”:{ “实体”: { “类型”:“组织”, ...
.Net 我的 protobuf 文件: 消息结果{ 重复的 ListOfStrings 列表 = 1; } 消息字符串列表 { 重复字符串string = 1; } 我有一个具有此属性的类: 公开名单 .Net 我的protobuf文件: message Result{ repeated ListOfStrings lists = 1; } message ListOfStrings { repeated string strings = 1; } 我有一个具有此属性的类: public List<List<string>> ListOfLists { get; set; } Protobuf 编译器生成 RepeatedField 集合,当我尝试将此集合传递给 ListOfLists.AddRange() 时,我收到此错误: cannot convert from 'Google.ProtobufCollections.RepeatedField<gRPC.ListOfStrings>' to 'System.Collection.Generic.IEnumerable<System.Collections.Generic.List<string>> 如何处理? A List<List<string>> 与有 字符串的事物列表不同。您可能需要: foreach (var list in outerList) { var inner = new ListOfStrings(); inner.Strings.AddRange(list); obj.Lists.Add(inner); } 你可以尝试一下CopyTo的方法吗,doc 示例伪代码: Result result = ... foreach(var list in result.list) { string[] arr = new string[list.Count]; list.CopyTo(arr,0); ListOfLists.Add(arr.ToList()); } 使用 C# 范围运算符,您可以简单地编写如下内容: List<TargetType> list = [.. result.Lists]; 其中 result.Lists 的类型为 RepeatedField