ws2007HttpBinding, определенный ОАЗИСОМ, является более новой версией, чем wsHttpBinding.
Это добавило ReliableSession, безопасность и протоколы TransactionFlow сверху Транзакций, Надежного обмена сообщениями и Обращающихся к WS протоколов wsHttpBinding.
могло быть легче запуститься с простой привязки, и при необходимости в будущем, можно всегда представлять существующие сервисы в более новой привязке, сосуществующей с более старой версией.
Да! Прочтите эту статью о пространственных индексах. Вы увидите, что эти типы индексов работают лучше, чем подход «индексированного прямоугольника». Кроме того, вы сможете не только эффективно запрашивать «находится точка рядом с другой точкой», но и выполнять все другие виды географических операций. Вот полный список всех доступных методов для этого типа.
Да, это очень хорошо можно сделать с пространственными данными SQL 2008. Существует некоторый опыт / метод проб и ошибок (?) В настройке пространственной индексации на нужном уровне сетки, но после этого предполагается, что она будет отличной (как сообщили мне друзья, я сам не использовал ее в производстве).
Для ваших целей (широта / долгота) вы будете использовать географический графический тип, а не гео метрику . Я считаю, что пространственные индексы устанавливают тип индексации «вложенный ограничивающий треугольник», который является улучшением по сравнению с типом предварительной обработки «ограничивающий прямоугольник», который мы вынуждены делать в SQL без него.
Хорошо, я бы предложил начать на этот пост в блоге Гранта Фритчи «Дом страшного администратора базы данных» (скажите ему, что я послал вам, если вы хотите задать вопросы :-)).
Нашел это:
Для SQL 2008:
http://blogs.lessthandot.com/index.php/DataMgmt/DataDesign/sql-server-2008-proximity-search -with-th
Очевидно, это возможно
ПРИМЕЧАНИЕ. Версия этой статьи для SQL 2005 работает не очень хорошо. Я пробовал такие вещи, и лучше просто получить квадрат из SQL Server, а затем отбросить круг в вашем собственном коде.
Другие интересные ссылки:
http://msdn.microsoft. com / en-us / library / bb964712.aspx
(Наконец-то объяснение !!)
И пример запроса ... По-видимому, вот как выполнять поиск, который я хочу (точки в 5-мильном круге):
DECLARE @Location GEOGRAPHY
SET @Location = GEOGRAPHY::STPointFromText('POINT(73.9517061 40.7934358)',4326).STBuffer(5 * 1600);
SELECT [fields] FROM [table] WHERE LocGeog.STIntersects(@Location) = 1
(LocGeog - столбец География)
Как ни странно, это выполняется НАМНОГО медленнее, чем мой обычный старый запрос (в 7 раз медленнее ), так что очевидно, что я все еще делаю что-то очень не так.