Reemplazar la serialización JSON predeterminada de WCF

¿Es posible reemplazar la serialización JSON predeterminada de WCF (actualmente estoy probando con el comportamiento webHttp ) y pasar la application/json como el tipo MIME? En particular, no me gusta que por defecto cada propiedad sea un par clave / valor como:

 {"Key":"PropertyName", "Value":"PropertyValue"} 

Estoy utilizando el servicio solo para puntos finales habilitados para JSON (solicitando datos con jQuery + WCF).

Puede usar un formateador de mensajes para cambiar el serializador utilizado para tratar con JSON. La publicación en http://blogs.msdn.com/b/carlosfigueira/archive/2011/05/03/wcf-extensibility-message-formatters.aspx muestra un ejemplo sobre cómo cambiar el serializador predeterminado (DataContractJsonSerializer) a otro (JSON.NET).

Considere crear clases correspondientes a su estructura de objetos JSON. En ese caso, no tiene que usar Dictionary<> como:

 [DataContract] public class Customer { [DataMember(Name="name")] public string Name{get;set;} [DataMember(Name="id")] public int ID{get;set;} } 

Esto se serializa como:

 {"name": "name-value", "id": "id-value"} 

Por supuesto, esto es solo una alternativa a lo que ya tiene y puede no ser aplicable.