Deserialize multifield Id field error

Hello, I have the following documents that look like this:

{
  "_id": {
    "DataOwnerCode": "RIG",
    "LinePlanningNumber": "1",
    "OperatingDay": "2022-07-25",
    "UserStopCode": "HA1234"
    },
    
  "AmountOfMismatches": 260,
  "LastReceived": "2022-07-25"
  }
}

As you can see my “_id” field is an object of 4 subfields. In my .NET project I have the following mapping classes for this:

 public class StopMismatch
    {
        public StopMismatchKey Id { get; set; }
        public int AmountOfMismatches { get; set; }
        public DateTime LastReceived { get; set; }
    }
 public struct StopMismatchKey
    {
        public string DataOwnerCode { get; set; }
        public string LinePlanningNumber { get; set; }
        public DateTime OperatingDay { get; set; }
        public string UserStopCode { get; set; }
    }

Inserting a “StopMismatch” object works just fine. However, when I want to query these documents I get the following error:

"An error occurred while deserializing the Id property of class Rig.Common.RealtimeMonitor.Models.Bison.StopMismatch: Value class Rig.Common.RealtimeMonitor.Models.Bison.StopMismatchKey cannot be deserialized."

Is that because I’m using a struct instead of a class?