Биты и байты.

Биты и байты.

среда, 30 июля 2014 г.

Расширенные возможности SQL сервера. Интеграция с CLR.

Есть одна полезная фишка у SQL сервера которая позволяет  использовать собственные библиотеки прямо в SQL сервере это интеграция с CLR.
CLR это промежуточная  исполняющая среда которая переводит  код CIL (промежуточный язык, который генерируют компиляторы)  в байт код.
Таким образом обеспечивается независимость от языка на котором написана программа.
Попробуем подключить собственную библиотеку к SQL серверу.
Создадим DLL, для этого в Visual studio выберем из шаблона тип библиотека классов
 
Опишем методы Sum, Multiply, substract, divide в нашем классе.
Обязательно указываем опцию shared (Указывает, что функции связаны с классом или структурой целиком, а не с определенным экземпляром класса или структуры.)

вторник, 29 июля 2014 г.

Веб сервисы WCF

Есть одна технология для создания веб сервисов WCF (Windows Communication Foundation), построена на принципе контрактов  (точно также как фирмы заключают контракты друг с другом, что куда где и как), с помощью этих контрактов описывается формат взаимодействия, данных и сообщений.

Контракты служб [ServiceContract] описывают операции (методы), которые могут выполняться клиентом с помощью службы. Включает контракты необходимых операций [OperationContract] ;
Контракты данных [DataContract] определяют, какие типы данных принимаются и передаются службой. При передаче объекта или структурного типа в параметре операции, в действительности, надо передать лишь его состояние, а принимающая сторона должна преобразовать его обратно к своему родному представлению. Это называется маршалтинг по значению. Он реализуется посредством сериализации, когда пользовательские типы переводятся из CLR представлений в XML содержимое SOAP-конвертов. При  приёме параметров происходит десериализация, т.е. набор XML преобразуется в объект CLR и дальше передаётся для обработки;
Контракты ошибок [FaultContract] определяют, какие исключения инициируются службой, как служба обрабатывает их и передаёт своим клиентам;
Контракты сообщений [MessageContract], [MessageHeader] [MessageBodyHeader] позволяют службам напрямую взаимодействовать с сообщениями и моделировать структуру всего конверта SOAP.

WCF если вкратце это  прокачанный ASMX может все тоже самое плюс дополнительные возможности .
ASMX:
Легко и просто написать и настроить
Поддерживается только IIS
Вызов только по HTTP

WCF :
Большой вариант размещения классический в IIS  плюс  Windows Service , приложение Winforms, консольное приложение – полная свобода (пример хостинга в консольном приложении)
Поддерживает  HTTP (REST и SOAP), TCP/IP, MSMQ и другие протоколы
  • HTTP:                                                http://localhost:8001/MyService (в глобальной сети)
  • TCP:                                                   net.tcp://localhost:8002/TestService (в лок. сети)
  • IPC (именованные каналы):             net.pipe://localhost/TestService (на одном компьютере)
  • MSMQ (механизм очередей):         net.msmq://localhost/TestService
  • Одноранговые сети:                         net.p2p: (например, узлы GRID)
Улучшена безопасность
Работает быстрее

В общем WCF призван полностью заменить ASMX.  Попробуем это сделать.

воскресенье, 6 июля 2014 г.

SQL и картография

Информацию нужно уметь подавать красиво..
В SSRS есть возможность красиво отобразить данные в отчете, если там  есть атрибут география будь то страна, регион, город и под рукой есть соответствующая карта.
Попробуем сделать это за 30 мин.
В итоге получится, отчет по регионам России, размер и цвет точки будут указывать количество населения в каждом регионе.
При наведении мышкой на регион должна появляться подсказка с наименованием региона и количеством людей проживающих в этом регионе.
При клике на любой регион должна открыться детальная карта этого региона по районам,  в Reporting Services есть возможность сделать подложку карт Bing maps.
Здесь регионы уже будут раскрашены по цветам в зависимости от количества населения в регионе.
Для этого нам понадобится сделать 5 шагов.

About