sagen, ich habe eine Reihe von User
bekam:Typecast jedes Objekt in einem Array auf einer einzigen Codezeile, mit LINQ
class User : IUserDowngraded
{
public Int32 Id { get; set; }
}
... mit heruntergestuft Funktionalität erfolgt durch die Objekte auf eine bestimmte Schnittstelle Gießen :
interface IUserDowngraded
{
Int32 Id { get; } // removes set functionality from property
}
... wie ich diese Herabstufung Objekte werfen würde (IUserDowngraded
) zu User
Objekten in einer einzigen Code-Zeile, mit LINQ?
Was ich versuche, dies zu vermeiden:
// pseudo-code alert:
IUserDowngraded[] downgradedUsers { IUserDowngraded, IUserDowngraded, ... };
var upgradedUsers = new User[downgradedUsers.Count()];
Int32 i = 0;
foreach (IUserDowngraded du in downgradedUsers)
{
upgradedUsers[i] = (User)user;
i++;
}
Ich denke, ich habe diese Methode vermisst. Danke :) – roosteronacid
Ja, LINQ hat viele Leckereien, die leicht zu übersehen sind ... Dies ist ein besonders nützliches. :) – Noldorin