J'ai un viewmodel comme ceci:Création d'alias dans LINQ avec SelectMany
public class FileInfo
{
private string _fileNo;
private string _fileName;
public string FileNo
{
get
{
return _fileNo;
}
set
{
_fileNo = value;
}
}
public string FileName
{
get
{
return _fileName;
}
set
{
_fileName = value;
}
}
}
J'ai une liste DataList avec des données et FileNo peuvent avoir duplications.
Je peux utiliser LINQ ci-dessous pour obtenir toutes les données de Datalist avec condition comme ceci:
List<FileInfo> ViewList = DataList.Where(x => !string.IsNullOrWhiteSpace(x.FileName))
.GroupBy(y => y.FileNo)
.SelectMany(z => z).ToList();
Comment obtenir le nom de I Alias dans le SelectMany et aussi .ToList() pour la requête ci-dessus, il devrait ressembler à quelque chose comme ceci:
List<FileInfo> ViewList = DataList.Where(x => !string.IsNullOrWhiteSpace(x.FileName))
.GroupBy(y => y.FileNo)
.SelectMany(new {...NewFileName = "Row " + FileNo + FileName, NewFileNo = "No " + FileNo}).ToList();
Les pointeurs seraient très appréciés
Merci
Vous voulez projeter le résultat dans un nouveau type? Vous devriez en savoir plus sur les clases C#, vérifiez https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/classes-and-structs/classes –
Vous devriez vraiment avoir consulté les docs pour SelectMany 'et les types anonymes comme vous auriez appris plus de faire cela que toute réponse ici vous donnera. – Enigmativity