Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите выбрать метод клиент-серверного взаимодей 
V
    Опции темы
Zakonnic
Дата 19.1.2007, 01:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Есть проект на стадии выбора архитектуры системы. Можно реализовать как web-приложение, но сейчас не об этом. Рассматривается следующий вариант:

Клиентское приложение, которое:
  •  По нажатию кнопки "Получить" выполняет авторизацию на сервере и получает то, чего запрашивало (xml-файл либо zip-архив). Тихонько распаковывает куда надо и работает с этим.
  •  По нажатию кнопки "Отослать" выполняет авторизацию на сервере и отсылает то, чего ему надо (xml-файл либо zip-архив). Сервер распихивает все по базе данных и нужным папкам.
Соединение через интернет (никаких локальных сетей).

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

Пишу на .Net (ASP.NET в том числе), не работал с Diagnostics и Remouting.
--------------------
...и никогда не пишите в комментариях правду
PM MAIL ICQ   Вверх
mr.DUDA
Дата 19.1.2007, 10:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

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



Если есть клиентское приложение (rich client, не браузер), работает с сервером в сети интернет, и на сервере есть IIS+ASP.NET, то однозначный выбор - web services. Во-первых, это удобно, во-вторых протокол HTTP проходит через файрволы, в-третьих мелкомягкие рекомендуют веб сервисы вместо ремоутинга, когда речь заходит об internet.


--------------------
user posted image
PM MAIL WWW   Вверх
Zakonnic
Дата 19.1.2007, 13:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Спасибо. Вариант с web services приемлем.
Таким образом, я использую HttpWebRequest на клиенте (приложение WinForms) и Responce.Write на сервере (WebService). Я правильно понимаю?
--------------------
...и никогда не пишите в комментариях правду
PM MAIL ICQ   Вверх
mr.DUDA
Дата 19.1.2007, 23:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

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



Цитата(Zakonnic @  19.1.2007,  12:29 Найти цитируемый пост)
Таким образом, я использую HttpWebRequest на клиенте (приложение WinForms) и Responce.Write на сервере (WebService). Я правильно понимаю?

Нет, всё намного проще:
- создаём ASP.NET Web Application, пишем простейший класс веб-сервиса а-ля Hello World (обычный класс, помеченный атрибутом WebService и содержащий обычный метод, только помеченный атрибутом WebMethod), создаём .asmx файл для этого класса; если добавляли студией, то и класс и asmx уже созданы;
- компилируем серверную часть;
- на клиенте создаём обычный WinForms application (можно и Console application), жмём Add Web Reference, вводим URL на наш asmx файл;
- после чего студия сгенерирует прокси-класс - обёртку, позволяющую с клиента создавать экземпляр серверного объекта (обычным оператором new) и вызывать метод на сервере (как обычный метод простого класса).

Собственно, всё.


--------------------
user posted image
PM MAIL WWW   Вверх
Zakonnic
Дата 20.1.2007, 00:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Круто! Все так и сделал. Вылезает ошибка 'The request failed with HTTP status 401: Access Denied.'. Правда, это уже мелочи. Попробую завтра предложить этот вариант.

Спасибо.

--------------------
...и никогда не пишите в комментариях правду
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
cully
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, cully, mr.DUDA, Exception.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Распределённые приложения и сеть | Следующая тема »


 




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


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

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