2
respostas

Por que as propriedades do itemPedido são com letra minúscula?

![](Insira aqui a descrição dessa imagem para ajudar na acessibilidade )

Por exemplo na linha 39, quando digitei itemPedido o Intellisense me oferece "Quantidade" e não "quantidade". Quando rodei o código com letra maiúscula o input ficava em branco ao clicar em adicionar. Depurando o código tudo corria bem, mas na página era necessário dar F5 para sair do "branco" para a nova quantidade.

Ao trocar para "quantidade", com letra minúscula, funcionou, mas não compreendi o porquê, uma vez que no IntelliSense só tenho a opção "itemPedido.Quantidade".

2 respostas

Talvez a IDE tenha interpretado que esperava uma class ou struct por exemplo, por isso da letra inicial maiúscula, porém você estava querendo chamar uma propriedade, e pela convenção as propriedades são escritas com a letra minúscula. Nada mais são do que convenções do C#, como o pascal case, camel case, entre outros.

Você pode dar uma conferida neste artigo se quiser: https://docs.microsoft.com/pt-br/dotnet/csharp/fundamentals/coding-style/coding-conventions

Por padrão o ASP .NET Core manda as informações do servidor para o navegador com as propriedades em minúsculo, vc deve alterar as opções de serialização para o servidor mandar as propriedades com os nomes originais. Na classe Startup.cs, dentro do método Configure Services vc deve colocar o seguinte código:

services.AddMvc().AddJsonOptions(options =>
                options.SerializerSettings.ContractResolver = new DefaultContractResolver()
            );

Esse artigo fala um pouquinho mais sobre outros casos de uso e outros padrões: http://www.binaryintellect.net/articles/6e6d3e19-3b17-4863-a4cf-cd8a7be11a6d.aspx