Melhor maneira de filtrar objetos de domínio para a saída json em um aplicativo ASP.NET MVC

Se eu estiver renderizando uma exibição regular no asp.net mvc, as únicas propriedades de objeto de domínio que aparecem na minha página as que eu escrevo especificamente. Por exemplo:

<div><%= Customer.FirstName %></div>

No entanto, se eu serializar um objeto de domínio para o json, ele incluirá todas as propriedades. Exemplo:

public JsonResult Customer (int? id)
{
    Customer customer = _serviceLayer.GetCustomer (id.Value);

    return Json (customer);
}

Como não quero que todas as propriedades do cliente sejam expostas, qual é a melhor maneira de filtrar as propriedades de saída para json nesse caso? Você pode usar uma lista de inclusão / exclusão como UpdateModel ()? Use uma classe proxy, como a classe pública JsonCustomer? O que você recomendaria?

questionAnswers(6)

yourAnswerToTheQuestion