Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Посоветуйте как лучше поступить


Автор: Loncaster 8.8.2006, 17:13
Собственно ситуация такова: есть некоторый веб-интерфейс для пользователей ,для доступа к интернет-статистике. Хочется написать десктопный клиент для этих же целей. Никакого протокола общения с самой системой в обход веб-интерфейса не предоставляется. Пока чисто для  меня оптимальный вариант таков: на независимом хосте будет лежать серверная часть приложения, написанная на ПХП. Т.е. юзер запускает у себя клиент, написаный на сишарпе, спрашивает логин и пароль, а далее тот передает их пхп-скрипту, который выдергивает из веб-интерфейса инфу и отдает их обратно клиенту. Вот интересует, какие еще способы есть провернуть такую штуку...Можно конечно прямо из клиента парсить веб-интерфейс..но почему-то не хочется.....Вообщем заранее спасибо за любые ответы )

Автор: Exception 8.8.2006, 17:18
А почему тогда серверная часть пишется на PHP? Гораздо удобнее было бы написать webservice на C# и взаимодействовать с ним, как с обычной библиотекой.

Автор: mr.DUDA 8.8.2006, 17:23
Кстати, в PHP есть поддержка веб-сервисов. Получится нормальная гетерогенная система.

Автор: Loncaster 8.8.2006, 17:37
Потому что в C# пока что практически полный ноль smile 

Автор: mr.DUDA 8.8.2006, 18:17
Можно, конечно и страничку клиентом парсить, но это геморнее и я бы предпочёл вариант с web service.

Автор: Loncaster 9.8.2006, 11:38
А получается если Я из сишарпа буду пытаться получить содержимое пхп скрипта, то это содержимое будет результатом работы скрипта? 

Автор: Exception 9.8.2006, 12:18
Разумеется smile . Только, как тебе уже сказали, лучше всего это дело оформить как веб-сервис.

Автор: Loncaster 9.8.2006, 16:20
Цитата(Exception @ 9.8.2006,  12:18)
Разумеется smile . Только, как тебе уже сказали, лучше всего это дело оформить как веб-сервис.

Где запускается веб-сервис? Я так понимаю только на windows платформе, что Меня уже не устраивает...

Автор: ivashkanet 9.8.2006, 16:24
Loncaster, Вэб-сервис запускается на Web-cервере (если на нем стоит фрэймворк). А уж обращаться к нему можно откуда хочешь smile 

Автор: Loncaster 9.8.2006, 16:51
Вот, еще одна проблема ) Нехочеться ограничивать серверную часть платформой...ибо хостится она будет не у Меня и никто спецом для меня не будет ставить на *никс моно например )

Автор: Loncaster 10.8.2006, 12:54
И еще, Я вот сейчас напиши какие основные особенности хочу сделать в программе, а вы скажите, можно ли это все реализовать средствами Си Шарпа) 

1) Можно ли посадить иконку программы в системный трей? )
2) Можно ли например раз в 15 мин делать запрос на определнную страницу и получить ее контект в переменную. (т.е. тут у меня вопрос по-поводу таймера)
3) Можно ли например опять таки, делать запрос на страницу определнную и скажем если вернулся определнный ответ, то чтобы возле иконки появлялась подсказка всплывающая красивая ?=)
4) Можно динамически менять подсказку, которая вылазит при наведении мышки на иконку проги в трее? Т.е., скажем, я каждые 15 мин получаю значение и сразу обновляю подсказку..
5) Где лучше хранить логин и пароль юзера к проге? Раньше держал в ини-файле.

Вот...вроде бы все smile

Автор: mr.DUDA 10.8.2006, 13:19
Loncaster, одна тема - один вопрос, пожалуйста. Или хотя бы по разделам раскидайте (ASP.NET, WinForms, общие вопросы).

Автор: Loncaster 10.8.2006, 16:37
Цитата(mr.DUDA @ 10.8.2006,  13:19)
Loncaster, одна тема - один вопрос, пожалуйста. Или хотя бы по разделам раскидайте (ASP.NET, WinForms, общие вопросы).

Ну Я просто посчитал, что незачем создавать в данный момент для каждого вопроса по той причине, что Меня посути сейчас интересует только возможно ли сделать или нет. Т.е. да или нет. =) Так что прошу все же ответить на мои вопросы в формате например 

1)да/нет
2)да/нет 
и т.д. )

Автор: mr.DUDA 10.8.2006, 16:56
Loncaster, дело не в том, что ответы или вопросы элементарные. Если постить в одну и ту же тему всё подряд, то:

1) кто-то, кому обсуждение может быть также интересно, не увидит его
2) тема рискует превратиться в свалку

Это не я выдумал, и называется это:
 smile 

Автор: Loncaster 10.8.2006, 17:23
Непойму смысла в теме, которая будет состоять из двух сообщений : "Можно посадить прогу в трей" и вторе : "Да/нет".  Другое дело, если бы Я спросил "КАК посадить прогу в трей?"...

Автор: Exception 11.8.2006, 02:57
Да, всё это можно с использованием библиотеки System.Windows.Forms. Некорректно говорить "умеет ли это шарп" -- ведь язык не должен оперировать такими понятиями, как кинока в трее smile . Это умеет библиотека. А сервис, как было сказано, можно реализовать и на PHP. Пожалуйста, далее один топик - один вопрос.

Автор: Loncaster 11.8.2006, 09:11
Ладно продолжим по теме. В чем будет преимущество этого веб-сервиса, написанного на пхп и того способа что я предложил изначально ? (Написать на пхп парсер и из проги дергать эту пхп-страницу).

Автор: mr.DUDA 11.8.2006, 11:32
Если парсить страницу, придётся следить за изменениями в дизайне и т.п. Особенно если этим потом будет заниматься кто-то другой.

Автор: Loncaster 11.8.2006, 12:14
Дак Мне же полюбому придется парсить....ведь нету никакого АПИ для общения с биллингом напрямую, только через веб-интерфейс..

Автор: Exception 12.8.2006, 13:21
Хорошо. С веб-сервиса ты загружаешь только необходимые данные в нормальном формате; а так тебе придётся грузить всю страницу.

Автор: Loncaster 12.8.2006, 17:29
Цитата(Exception @ 12.8.2006,  13:21)
Хорошо. С веб-сервиса ты загружаешь только необходимые данные в нормальном формате; а так тебе придётся грузить всю страницу.

Почему же? Пхп скрипт выдергивает скажем 2 нужных числа их страницы , а в прогу отправляет их в таком виде число1/число2 и больше ничего. А в проге уже через split() разделяю строку эту на отдельные числа..

Автор: Exception 12.8.2006, 17:40
А, я думал - ты клиентом хотел парсить страницу.. Понимаешь, веб-сервис -- стандартный и очень удобный выход из такой ситуации, и негоже изобретать велосипед. И я не пойму -- если уж ТАК любишь PHP, что мешает написать сервис на нём?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)