Déclarez la variable dans linq select (x = & gt; new
Je suis une cartographie de l'poco dans un modèle , le code indiqué ci-dessous
var noneRequiredUserDocuments = new List<NoneRequiredUserDocument>();
var docs = studentDocuments.Where(x => x.RequiredUserDocumentId == null).ToList();
noneRequiredUserDocuments = docs.Select(x => new NoneRequiredUserDocument
{
StudentDocument = x,
Src = _storageService.GetFileUrl(x.FileName),
ThumbnailImageUrl = ImageHelper.ThumbnailImageUrl(Src, 75)
}).ToList();
Mon problème est que dans cette ligne ThumbnailImageUrl = ImageHelper.ThumbnailImageUrl(Src, 75), la Src n'existe pas dans le contexte. Est-il un moyen pour moi de déclarer une variable au sein de l'sélectionnez que je peux la réutiliser dans le select de linq? Je ne veux pas l'appeler _storageService.GetFileUrl deux fois.
Grâce
source d'informationauteur Michael Esteves
Vous devez vous connecter pour publier un commentaire.
Vous pouvez déclarer une variable à l'intérieur d'un
Select
comme ceci:-Dans
query syntax
le faire, c'est l'équivalent de:-Vous pouvez utiliser le "let" mot-clé:
vous pouvez créer régulièrement un bloc de code au lieu de l'exécution d'une instruction unique au sein de l'expression lambda, de cette façon, vous pouvez simplement déclarer une variable "src" et il sera disponible tout au long de l'ensemble du bloc - régulière suivante champ d'application des règles.
Vous pouvez introduire temporaire collection de type anonyme, avec toutes les données nécessaires: