Array
(
)

Erro no retorno de JsonResult

Adriano Cordeiro
|
MVP
Pontos: 200
    23 set 2015

Bom dia!, Estou com dificuldades para entender esse problema:
Quando clico na linha do Datatable para editar os dados do Cliente ocorre erro sempre que o Cliente tem um Contato ou um Endereço cadastrado e isso é muito comum.
Este é código acionado quando faço um duplo click na linha do Datatable:
View:
#Código

////BUSCA DETALHES DO CLIENTE
            $.ajax({
                url: "ObterClientePorId",
                type: "post",
                datatype: "json",
                contentType: "application/json charset=uft-8",
                data: JSON.stringify({ "id": id }),
                success: function (data) {

                    if (data != null) {
                        alert("Nome: " + data.Result.NMCLIENTE);
                        var url = "Create?id=" + id;
                        window.location.href = url;
                    }

                },
                error: function (xhr, err) {
                    alert(err.message);
                }
            });

Controller:
#Código
 public JsonResult ObterClientePorId(int id)
        {
            var ocliente = _IRepositorio.ListarClientePorId(id);
            return Json(new { Result = ocliente }, JsonRequestBehavior.AllowGet);
        }

Repositório:
#Código
public TBCliente ListarClientePorId(int? id)
        {
            return _repositorio.Clientes.FirstOrDefault(c => c.TBCLIENTEID == id);
            
        }

PRINT:
View
Clique na imagem para abrir em uma nova janela
Controller
Clique na imagem para abrir em uma nova janela
Repositório
Clique na imagem para abrir em uma nova janela
Controller
Citação:
Observe que o Cliente tem um Endereço cadastrado

Clique na imagem para abrir em uma nova janela
View
Citação:
Aqui ocorre o erro, sempre quando o Cliente tem um Endereço ou um Contato que é comum:

Clique na imagem para abrir em uma nova janela
Obrigado!