Por que não podemos usar campos públicos para ligação de dados em c #?
Estou ciente das vantagens de usar propriedades sobre os campos, como poder fornecer lógica adicional quando necessário no futuro.
Mas eu realmente me pergunto por que não é possível usar campos públicos para ligação de dados ou mesmo para serializadores JSON como a classe JavaScriptSerializer.
Existe algum bom motivo para ignorar campos públicos nesses casos? Ou é apenas algum tipo de convenção? Ou apenas para forçar os usuários a usar propriedades?