我正在使用 gRPC 编写一个方法并将其提供给另一个微服务,但我不知道如何在 protobuf 中生成可为空的 DateTime 属性并用我从 AppService 获取的数据填充它! 我需要的最终属性如下:
public class MyClass{
public DateTime? MyDateTime {get;set;}
}
protobuf 中也没有 DateTime 变量类型。
我希望在我的原型文件中设置一个可为空的 DateTime 属性,然后用我从 gRPCService 中的另一个服务获取的 DataTime 填充它。
我自己通过使用找到了答案:
import "google/protobuf/timestamp.proto";
在 proto 文件和当前文件中,消息属性应该是:
message MyTestDto{
google.protobuf.Timestamp MyTimestamp = 1;
}
在 GrpcService 中完成所有这些步骤后,我使用此 C# 代码将时间戳转换为日期时间。
Timestamp.FromDateTimeOffset(x.CvCardFa.MyTimestamp.Value.ToLocalTime())
就是这样。