Метод DomainService Include () не возвращает детей клиенту Silverlight - PullRequest
1 голос
/ 29 марта 2011

Это сводит меня с ума, у меня есть вызов DomainService, который на сервере содержит функцию Include () для возврата дочерних объектов следующим образом:

public IQueryable<RegionBorder> GetRegionBordersWithPolygonsAndLatLongs()
    {
        return this.ObjectContext.RegionBorders.Include("RegionPolygons.LatLongs");
    }

Я установил эту строку в качестве точки отладки на сервере, и она генерирует правильные результаты с дочерними коллекциями, включенными в сущности верхнего уровня. Однако на клиенте я не могу получить доступ к детям. Код клиента выглядит следующим образом:

EntityQuery<RegionBorder> query = idc.GetRegionBordersWithPolygonsAndLatLongsQuery();
        LoadOperation<RegionBorder> lo = idc.Load<RegionBorder>(query);
        lo.Completed += delegate(object sender, EventArgs e1)
        {
            //regionBorders = idc.RegionBorders;
            string prtyName = "ProjOverspend";
            var elements = new Collection<FrameworkElement>();
            var propertySet = new ExtendedPropertySet();
            propertySet.RegisterProperty(prtyName, prtyName, typeof(double), 0d);

            foreach (RegionBorder ent in idc.RegionBorders)
            {
                foreach (RegionPolygon rp in ent.RegionPolygons)
                {
                    Telerik.Windows.Controls.Map.MapPolygon mp = new Telerik.Windows.Controls.Map.MapPolygon();
                    mp.Points = rp.Points;
                    elements.Add(mp);
                    SetExtendedProperty(propertySet, prtyName, mp, 0d);
                }
            }

Кто-нибудь может мне помочь с тем, где я иду не так, потому что я уверен, что раньше это работало нормально, а теперь просто ничего не сделает.

Спасибо за любую помощь.

Martyn.

Ответы [ 2 ]

1 голос
/ 29 марта 2011

Вы также должны добавить IncludeAttribute в метаданные.

0 голосов
/ 28 октября 2011

Есть ли способ сделать диалог службы домена в VS2010, который генерирует метаданные, автоматически добавить [Include] и [Association ("[String name]", "[String thisKey]", "[String otherKey]) ")] тэги?

Это довольно трудоемкий процесс обслуживания и проверки, если вам по какой-то причине необходимо восстановить доменную службу, если вы, например,. реализовано много / серьезных изменений в модели сущностей.

Обязательно ли добавлять теги [Association ("", "", "")], когда модель уже содержит эту информацию из-за своих связей (внешних ключей)?

...