Я пытаюсь загрузить таблицу координат формы из базы данных для построения на карте Silverlight bing. Структура таблицы, которую меня интересует, находится здесь http://dl.dropbox.com/u/10440538/ADO.png.вложенные петли foreach и служба домена домена WCF
Использование службы wcf ria Я могу загрузить данные в порядке, но мне нужна помощь с моим кодом, чтобы вытащить данные самого низкого уровня (координаты) и разделить их на коллекции. Конечный результат должен быть таким, чтобы у меня была коллекция LocationCollections, одна LocationCollection для каждой карты в базе данных.
Это мой loadoperation обратного
void FarmsLoaded(LoadOperation<Farm> loadOp) {
LocationCollection lc = new LocationCollection();
foreach (Farm f in loadOp.Entities) {
foreach (FarmLocation fl in f.FarmLocations) {
foreach (MapShape ms in fl.MapShapes) {
lc.Clear();
foreach (MapPoint mp in ms.MapPoints) {
lc.Add(new Location(mp.Latitude, mp.Longitude));
}
shapeList.Add(lc); //observablecollection of LocationCollections
}
}
}
}
shapeList затем привязывается к карте слоя. К сожалению, когда я запускаю это, рисуется только последняя карта в db. Я думаю, что я неправильно понимаю, как проходит привязка foreach, поэтому я бы оценил любые усилия по просветлению по правильному использованию вложенных foreach в этой ситуации или любые альтернативные предложения, если foreach не подходит (LINQ?)
Поддерживает ли shapeList все правильные значения при прохождении через него? Означает ли он последние значения при ударе lc.Clear()? –
Функция clear удаляет его из панели управления, если я продолжаю создавать новые LocationCollections каждый раз, когда кажется, что он работает нормально. Спасибо –