You are creating a new list each time you want to add a new item. Furthermore you are not doing anything with the list after that. I guess you want to fill the list and then return it form the method:
private List<dashinfo> OnLoadDashBoardDataCompleted(LoadOperation<dashboardjson> loadOperation)
{
List<dashinfo> dashinfos = new List<dashinfo>();
foreach (DashboardJson dashjson in loadOperation.Entities)
{
if (dashjson.groups.ElementAt(0).Cells.ElementAt(0) != null)
{
foreach (var region in loadOperation.Entities)
{
foreach (var group in region.groups)
{
dashinfos.Add(new DashInfo { Gid = group.gid, Group = group.Name, Region = group.Region, Duration = group.AvgInf });
}
}
}
}
}
return dashinfos;
}