Конвертировать переменную в список <MapPdf> - PullRequest
0 голосов
/ 07 января 2019

У меня есть программа, в которой я использовал переменную типа List ​​, которую я буду отсоединять в переменных при заполнении. Я хотел бы иметь возможность использовать ее в другой раз, но у меня не было право снова идентифицировать его как

    public static void Create(List<MapPdf> pps, Saison s, Agence agence)
    {
        foreach (var pelerins in grouped)
        {
            if (string.IsNullOrEmpty(pelerins.Key) || pelerins.Count() <= 0)
                break;
            if (writer.PageEvent == null)
            {
                writer.PageEvent = new Header_List()
                {
                    travel = ctx.Travels.Include("Transport").First(v => v.UniqueId == pelerins.Key),
                    travelretour = ctx.Travels.Find(pelerins.First().UniqueIdRetour),
                    Agence = agence,
                    CountAllPelerin = pelerins.Count().ToString(),
                    CountFeminin = pelerins.Count(x => x.Sexe == PelerinSexe.Feminin).ToString(),
                    CountMasculin = pelerins.Count(x => x.Sexe == PelerinSexe.Masculin).ToString(),
                    NomGroupe = pelerins.First().Groupe,
                    NumeroDoc = writer.PageNumber
                };


            }
        }
    }

И я хочу использовать пелерины в качестве Списка, когда я использовал в другой функции, когда это из этого объявления

Я использовал Список ​​pls = pelerins.ToList (); , но он не работает

         CreateFr(pls, false, cb,  s);

1 Ответ

0 голосов
/ 07 января 2019

Если вы ссылаетесь на var pelerins в цикле for-each и если я понимаю проблему, вы не можете использовать его в другом методе, потому что var pelerins - это локальная переменная, инкапсулированная в цикле for-each -It не существует вне его.

Вы можете сделать следующее:

//public property to retrieve pelerins
public List <MapPdf> pls new List<MapPdf>();
 ...
 ...
public static void Create(List<MapPdf> pps, Saison s, Agence agence)
{    
 foreach (var pelerins in grouped)
 {
        if (string.IsNullOrEmpty(pelerins.Key) || pelerins.Count() <= 0)
            break;
        if (writer.PageEvent == null)
        {
           //do logic
           ...
           //store the one you are interested in, so you can use it later on
           pls = pelerins.ToList(); 
        }


 }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...