dotnet / dotnet/dotnet-api-docs
Enumerable.Prepend and Enumerable.Append's remark "it creates a copy of the collection with the new element." can be misleading.
- Lingua principale
- C#
- Stelle
- 949
- Fork
- 1.7k
- Merge medio
- 2g 19h
- PR unite (30g)
- 52
Descrizione
### Type of issue
Missing information
### Description
The remarks for both [Enumerable.Append](https://learn.microsoft.com/en-us/dotnet/api/system.linq.enumerable.append?view=net-9.0#remarks) and [Enumerable.Prepend](https://learn.microsoft.com/en-us/dotnet/api/system.linq.enumerable.prepend?view=net-9.0#remarks) can be misleading.
It currently states for both:
> This method does not modify the elements of the collection. Instead, it creates a copy of the collection with the new element.
However it returns a lazily evaluated wrapper:
```
var original = new List { "b", "c" };
var result = original.Prepend("a");
Console.WriteLine(result.GetType()); // System.Linq.Enumerable+PrependIterator`1
```
and no copy is actually made:
```
var list = new List { "b", "c" };
var result = list.Prepend("a");
list.Add("d");
foreach (var item in result)
Console.WriteLine(item);
// Output:
// a
// b
// c
// d
```
### Page URL
https://learn.microsoft.com/en-us/dotnet/api/system.linq.enumerable.prepend?view=net-8.0#remarks
### Content source URL
https://github.com/dotnet/dotnet-api-docs/blob/main/xml/System.Linq/Enumerable.xml
### Document Version Independent Id
9556f661-a131-5b65-913f-50770cc980cf
### Platform Id
acda5d20-c39a-4d6d-e70e-28d92c16a6b3
### Article author
@dotnet-bot
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Apri xml/System.Linq/Enumerable.xml e individua le note relative a Enumerable.Append e Enumerable.Prepend. Confronta la formulazione con il comportamento del wrapper lazy mostrato nell’issue, quindi aggiorna entrambe le note in modo che non implichino una copia immediata della raccolta; verifica che la documentazione API generata descriva correttamente il risultato.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- csharp
- Ambito
- documentation
- Tipo di issue
- Documentazione
- Difficoltà
- 1/5
- Tempo stimato
- Meno di un'ora
- Stato di attività
- Ferma
- Chiarezza
- Specificata chiaramente
- Idoneità per principianti
- 45/100