@LINQ acho que ficou bom, eu que recém comecei estudar C# e nem sei o que é o LINQ direito entendi muito bem o post
@AndersonCarlosWoss deu um trabalhão achar as funções, comecei procurando pelo erro, daí encontrei a função que cria ele, depois fui procurar onde aquela função era invocada, e assim por diante procurando as funções que eram relacionadas e o que faziam, meu conhecimento em C é bem básico, mas deu pra pegar alguma coisa
mano, 6h50 da manhã, vizinho resolve dar uma festa com música alta e tudo mais; como ele consegue convidados pra ir na casa dele nesse horário? tá cheio de gente, todo mundo gritando ¬¬
> O código abaixo, filtra por clientes que tenham mais de uma compra e, na projeção, a propriedade PiorCompra representa a pior compra (a com menor valor) acima de $ 150.
vi aqui que para ver o codigo tem q abrir outro link, ai o codigo correto não fica diretamente linkado com o paragrafo q vc explica ele, n gostei muito disso
acho q se for uma pessoa leiga lendo ela vai se atrapalhar com isso e saber q determinado trecho e sobre determinado paragrafo
> De forma geral, os agrupamentos têm como propósito realizar uma ou mais agregações em cada grupo
Achei essa frase bastante confusa
a função do "agrupamento"... "cada grupo"
Me pareceu "a função do agrupamento é agrupar"
> A primeira coisa que é preciso entender é como funciona a principal estrutura de retorno do método. O tipo de retorno do GroupBy é este definido abaixo
Eu diria que é desnecessário você fazer uma citação por extenso de algo que virá logo em sequência
Essa frase poderia ser removida sem afetar negativamente o texto
A primeira coisa que é preciso entender é como funciona a principal estrutura de retorno do método:
<codigo>
"E o que é este IGrouping?"
Ficaria melhor: "**Mas** o que é este IGrouping?"
Pois me pareceu que a ideia é definir uma adversão, não uma adição, à frase anterior
> [...] também uma propriedade Key que carregará o valor em comum entre estes itens
E quando o agrupamento é por mais de um valor? Como fica Key?
> Por exemplo: se tenho uma lista de compras e quero agrupar pela data de pagamento, para cada data de pagamento diferente existirá um grupo contendo todos os itens com esta determinada data e a propriedade Key terá como valor a data que foi usada para agrupá-los
Acho que dá para simplificar o exemplo
"se eu tenho uma lista de compras e quero agrupá-la pela data de pagamento, posso utilizar o GroupBy para gerar grupos separados pela data. A propriedade Key conterá a data de pagamento do grupo e Values as respectivas compras."
Talvez até seria interessante manter a conjugação na terceira pessoa no exemplo para manter o padrão do texto
"Pode-se agrupar uma lista de compras pela data de pagamento utilizando o GroupBy. O retorno será ..."
Agora que vi que o retorno só tem Key, mas deu para entender a ideia no exemplo...
"Para fins de entendimento", eu não usaria assim, pois ao meu ver todo o texto é para fins de entendimento
Aliás, essa comparação ficou um tanto quanto esquisita
"A estrutura é como um dicionário em que o value é uma coleção, mas a estrutura, diferente do dicionário, não tem value"
Ficou tipo "é igual mas é diferente" pelo mesmo motivo
No exemplo com código, se quiser manter assim, eu diria para colocar uma frase do tipo "já vimos que podemos agrupar as compras pela data de pagamento, mas podemos também agrupar pelo nome do cliente, veja como fica..."
Isso porque como o exemplo é quase o mesmo, dá a impressão de "ué, mas a lista de compras não era agrupada pela data de pagamento, por que aqui está sendo usado o cliente?"
> Agora vamos listar todas as compras, agrupando-as pelo cliente. Sabendo que precisamos agrupar por cliente...
Aqui meio que indiretamente está chamando o leitor de incompetente e que precisa lembrá-lo de algo que acabou de ser dito hahaha
Poderia ser "Agora vamos listar todas as compras, agrupando-as pelo cliente e, para isso, utilizaremos a função..."
E também entra a questão da conjugação da terceira pessoa aqui
E retomando a questão de chamar de grupo ou de item, foreach(var item in agrupamento) aqui, seria interessante ajustar (se for mudar tudo para grupo, no caso)