SAPE на ASP.Net
Однажды пришло время подружить один из сайтов написанных на ASP.Net с сервисом Sape (для удобства в дальнейшем буду звать Сапа). Полностью вроде бы старался следовать приложенной инструкции, но все равно возникали проблемы и вопросы. В данном материале я постараюсь изложить основные моменты реализации данного вопроса.
В 1-м пункте приложенной инструкции сказано о том, что необходимо скачать файл по приложенной ссылке. Здесь я думаю у всех все получилось без проблем. Как не должно возникнуть проблем и со вторым пунктом плана, в котором необходимо разархивировать скачанный архив. Следующий пункт (под номером 3) гласит о том, что необходимо извлеченную из архива папку скопировать в корень вашего сайта. Не нужно менять имя папки, несмотря на то, что оно слишком длинное и непонятное. Находящийся в папке файл класса sape.cs необходимо скопировать в папку App_Code. Если данной папки у вас в проекте нет (она должна быть в корне), то создайте ее, после чего скопируйте файл. Эти первые три пункта пройдены. С 4-го пункта у многих могут начаться вопросы или проблемы.
Для начала хочу сказать, что я на данный момент ничего не менял в предоставленном классе sape.cs. И еще уточнение: все страницы сайта, на который производилась интеграция сапы, наследуются от MasterPage, поэтому все манипуляции проводились со страницей MasterPage.
В MasterPage.master.cs вызываем класс MyNameSpace, который объявлен в sape.cs. Это выглядит так "using MyNameSpace;". Далее нам необходимо объявить переменную _SAPE_USER. Для этого в том же модуле прописиваем "private readonly string _SAPE_USER = имя_папки". Где имя_папки это название папки извлеченной из скачанного архива. Далее нам необходимо создать сам объект класса SAPE_client, описанного в sape.cs. Создание объекта, как и собмтвенно дальнейший вызов метода для вывода ссылок мною был сделан на событии Page_Load страницы MasterPage.
Итак создаем объект.
SAPE_client MySape = new SAPE_client(_SAPE_USER, Request.Url.Host.ToString(), true, Request.Url.PathAndQuery.ToString());
Назначение каждого парметра расписывать не буду, поскольку они подробно расписаны в инструкции.
Для вывода полученных ссылок прописываем:
MySapeText.Text = "Реклама: " + sapeclient.Return_links();
В скобках (в качестве параметра) можно указать число, которое будет нести смысл количества выводимых ссылок.
Также все это советую обнести обработчиком try catch. Также при помощи switch case можно управлять местом вывода ссылок и их количеством
на разных страницах сайта. Об этом, кому будет интересно, подробнее расскажу при обращении таковых ко мне.
Вот собственно и все.
Напоследок приведу вашему вниманию листинг страницы MasterPage: