Модераторы: gambit, Kefir, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> MySQL и Silverlight, Подключение к базе MySQL 
V
    Опции темы
Bladerender
Дата 20.8.2009, 16:40 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 207
Регистрация: 19.7.2007

Репутация: нет
Всего: нет



Есть такая проблема. Есть у меня сайт на php. НА одном из фреймов есть Silverlight-приложение. Я хочу как-то подключатся к базе сайта (MySQL) и запрашивать оттуда данные. Как это сделать?
У меня есть несколько вариантов:
1. Подключатся напрямую к базе MySQL и брать данные.
2. Вызывать из сильверлайта php-функции, которые будут делать запрос в базу и возвращать мне результаты.

Как реализовать один и другой способ я незнаю, так как стыкаюсь с этим пару раз. Возможно даже какой-то из вариантов нереализуем вообще, но по идее должен. 
Кто посоветует какой вариант лучше и как это сделать?
НУжно без использования WCF.

Это сообщение отредактировал(а) Bladerender - 21.8.2009, 11:51
PM MAIL   Вверх
Crypton
Дата 21.8.2009, 04:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 158
Регистрация: 9.10.2006
Где: США, Санкт-Петерб ург

Репутация: нет
Всего: 2



Легко и просто и без всяких маразмов. В MySQL уже есть нужные штепсели ADO.NET для подключения к серверу.

http://dev.mysql.com/downloads/connector/net/6.0.html -- ADO.NET
http://dev.mysql.com/downloads/connector/odbc/5.1.html -- ODBC (если сервак Low-Trust)
--------------------
«Все, что вы знаете — ложь» Теория мироздания 
PM MAIL WWW ICQ Skype   Вверх
Bladerender
Дата 21.8.2009, 11:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 207
Регистрация: 19.7.2007

Репутация: нет
Всего: нет



ТО что вы предложили работать c Silverlight небудет (без использования WCF)
PM MAIL   Вверх
Bladerender
Дата 21.8.2009, 17:55 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 207
Регистрация: 19.7.2007

Репутация: нет
Всего: нет



Проблему решил. Сделал так. НА стороне сервера есть php-файл, который я использую для доступа к базе. 
К нему я подключаюсь веб-клиентом из сильверлайта прямо из обработчика нажатия на кнопку.

Код

            WebClient client = new WebClient();
            client.DownloadStringCompleted += client_DownloadStringCompleted;

///Это обработчик клика по кнопке, по которой мцы кликаем и делается запрос в базу.
        private void SearchClick(object sender, RoutedEventArgs e)
        {
             ///Подключаемся к нашей php странице передавая ей в качестве параметра ourData
              client.DownloadStringAsync(new Uri("Workplace.php?ourData="+this.lsTExtBox.Text, UriKind.Relative));
        }

        ///Обработчик, который сработает когда у нас отработает php-файл и сгенерирует результат
        void client_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
        {
            ///НАш результат. Если просто одна запись то так и пользуем, если несколько то нужно парсить строку.
            this.ovner.Text = e.Result;
        }





Код

php-файл

 <?  
header('HTTP/1.1 200 OK');  
header('Content-Type: text/html; charset=windows-1251');  
$inputString = $_REQUEST['ourData'];  

function GeneratePage($str)
 {
       //$str - это те данные, которые мы передали из сильверлайт-приложения на сервер с помощью веб-клиента
       тут делаем класическое обращение на  php к базе MYSQL или другой. 
 }
 
GeneratePage($inputString)

?>   



Итого мы получаем кросплатформенную серверную сторону, которой не требуется ни IIS ни .Net на сервере. Тоесть на любой хостинг под любую платформу. 

Это сообщение отредактировал(а) Bladerender - 21.8.2009, 17:57
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | WPF и Silverlight | Следующая тема »


 




[ Время генерации скрипта: 0.1521 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.