将var转换为List <mappdf>

时间:2019-01-07 10:32:00

标签: c# wpf data-binding

我有一个程序,我使用了 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
                };


            }
        }
    }

当我在此声明中使用另一个函数时,我想将pelerins用作列表

我使用了 List pls = pelerins.ToList(); ,但是它不起作用

         CreateFr(pls, false, cb,  s);

1 个答案:

答案 0 :(得分:0)

如果您在for-each循环中引用var pelerins,并且我理解此问题,则无法将其用于其他方法,因为var pelerins是封装在for-循环中的局部变量。每个循环-它不在循环之外。

您可以执行以下操作:

//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(); 
        }


 }
}