Q:

C# Erro ao Deserializar Json para Objeto

Estou tomando um erro quando pego o retorno de um serviço REST e tento deserializar para um objeto em C#.
O Serviço REST me retorna a seguinte estrutura(json):
{
"Marcacoes_Ponto_Response":
{
    "Item":
    {
        "Codigo_Retorno":"S"
        ,"Mensagem":"Operação realizada com sucesso"
        ,"Numero_Fabricacao_REP":"00099999999999990"
        ,"PIS":"12409663348"
        ,"Data_Marcacao":"20092019"
        ,"Hora_Marcacao":"093715"
    }
}

}
No código em C#, uso o seguinte código para deserializar para um objeto:
var dadosFuncionario = JsonConvert.DeserializeObject<ResultPontoDigitalSAP>(responseFuncionario.Content.ReadAsStringAsync().Result);

A definição do objeto usado nos códigos acima segue abaixo:
public class ResultPontoDigitalSAP
{
    public List<Marcacoes_Ponto_Response> Marcacoes_Ponto_Response { get; set; }
}

public class Marcacoes_Ponto_Response
{ 
    public string Codigo_Retorno { get; set; }
    public string Mensagem { get; set; }
    public string Numero_Fabricacao_REP { get; set; }
    public string PIS { get; set; }
    public string Data_Marcacao { get; set; }
    public string Hora_Marcacao { get; set; }

}

Mas quando o resultado JSON é retornado para aplicação eu tomo um erro do C# de formatação de JSON quando tento deserializar para o objeto definido acima.
Alguém sabe o que estou fazendo de errado?

A:

O layout desse json é um objeto dentro de outro objeto e por isso no seu layout da pergunta não bate porque está um array, exemplo de como seria:
public class Rootobject
{
    public Marcacoes_Ponto_Response Marcacoes_Ponto_Response { get; set; }
}

public class Marcacoes_Ponto_Response
{
    public Item Item { get; set; }
}

public class Item
{
    public string Codigo_Retorno { get; set; }
    public string Mensagem { get; set; }
    public string Numero_Fabricacao_REP { get; set; }
    public string PIS { get; set; }
    public string Data_Marcacao { get; set; }
    public string Hora_Marcacao { get; set; }
}

Usar:
string json = responseFuncionario.Content.ReadAsStringAsync().Result;
var dadosFuncionario = JsonConvert.DeserializeObject<Rootobject>(json);

