Карты Bing - Javascript против Silverlight - PullRequest
0 голосов
/ 11 февраля 2011

В настоящее время я оцениваю создание системы на основе карт для построения данных.Эти данные будут состоять из слоев формы (сетка - хранится в столбце географии SQL 2008) и нескольких точек (первоначально ~ 5500 - точки широты и долготы в одной и той же БД), которые будут отображать расположение элементов в сетке.Итак, мой вопрос - есть ли большая разница между реализацией Silverlight Bing Map и реализацией на основе JavaScript.Вот что я могу почерпнуть из своего исследования:

SilverLight Pros

  • Может обрабатывать большие объемы данных быстрее
  • API / SDKнапрямую связать с кодом приложения .NET

Плюсы JavaScript

  • Не нужно загружать / устанавливать Silverlight на стороне клиента
  • Может использовать JQuery или другие фреймворки для извлечения данных из веб-сервиса (я знаю, что SL может сделать это с помощью WCF, но я достаточно хорошо знаю JQuery)

Я знаю из этого списка, что это выглядит так, как будтопереходите на Silverlight, однако я также НИКОГДА не занимался кодированием с использованием XAML.В последнее время большая часть моего опыта связана с .NET MVC, и я не могу не принять это во внимание.Кто-нибудь знает «соотношение» производительности между SilverLight и Javascript или в какой момент реализация JavaScript будет задыхаться?Еще одна вещь, я посмотрел на проект DataConnect на codeplex, но, похоже, он сломан - я не могу заставить функции WKT или XAML работать на их живом сайте или в загруженном проекте.

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

РЕДАКТИРОВАТЬ

Я нашелотличный пример приложения Javascript / .NET MVC с использованием SQL 2008 на CodePlex - Ajax Map Data Connector .В нем приводятся примеры извлечения полигонов, линий и точек интереса из базы данных, размещения их на карте с использованием плиток изображений или MS API, а также использования пересечения для определения элементов вокруг точки или внутри ограниченного прямоугольника.

Ответы [ 2 ]

1 голос
/ 12 февраля 2011

Я бы пошел с элементом управления javascript (улучшенная поддержка нескольких устройств, в настоящее время разрабатывается более активно, чем элемент управления Silverlight, звуки лучше подходят для вашего набора навыков). Однако не пытайтесь нанести на него 5500 пунктов. Он умрет.

Более того, если вы думаете о построении 5500 точек, значит, что-то не так с вашим дизайном приложения - конечный пользователь не сможет различить столько разных точек на карте. Позвольте им фильтровать для определенных типов точек, или извлекать только те, которые видны в текущем виде карты, или использовать кластеризацию для группировки точек с более высокими уровнями масштабирования - вам нужно только иметь максимум 100-200 видимых точек данных на карте в любое время. Если вам действительно необходимо отобразить столько точек, то предварительно отрендируйте их как слой листов и кэшируйте их, а не пытайтесь наносить динамические векторные данные на карту.

И я не согласен с wildpeaks - v 7.0 является последней стабильной версией платформы Bing Maps AJAX и представляет собой серьезное изменение по сравнению с v6.3. Если вы начнете программировать с v6.3 сейчас, вам придется пережить переворот только позднее, когда вам придется перейти на v7.0. Лучше начать с v7.0, чем изучать устаревший API.

1 голос
/ 11 февраля 2011

Лично я предпочитаю версию Javascript, потому что она более мультиплатформенная (например, mobiles ) и легко интегрируется в веб-приложение (плюс я также люблю jQuery), но я думаю, что решающим фактором, вероятно, является , что Вы хотите использовать приложение для ?


Однако для Javascript, даже если я люблю версию 7, вы можете придерживаться версии 6.3 на данный момент, потому что слишком много основных компонентов было удалено (но планируется повторное добавление в будущем), например. информационные ящики и кластеризация на стороне клиента (конечно, вы можете делать свои собственные реализации, это то, что я делал лично, но я бы посоветовал сейчас использовать 6.3).

...