如何在 C# 中将 Json 响应读入 Document AI 的 Document 对象

How to read Json response into Document object of Document AI in C#

我正在尝试从云存储中读取 json 文件并尝试将其转换为 Google.Cloud.DocumentAI.V1.Document.

我做过POC,但是抛出异常Google.Protobuf.InvalidProtocolBufferException: 'Protocol message end-group tag did not match expected tag.'

首先,我正在将 .Json 文件读入 MemoryStream 并尝试合并到文档中。

  using Google.Cloud.DocumentAI.V1;

  public static void StreamToDocument()
    {
        byte[] fileContents = File.ReadAllBytes("C:\upload\temp.json");
        
        using (Stream memoryStream = new MemoryStream(fileContents))
        {
            Document doc = new Document();
            var byteArray = memoryStream;
            doc.MergeFrom(byteArray);
        }           
    }

我收到的错误消息是

还有其他方法可以实现吗?

您在此处指定的代码期望数据为 binary protobuf 内容。对于 JSON,您需要:

string json = File.ReadAllText("C:\upload\temp.json");
Document document = Document.Parser.ParseJson(json);