powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / обшение с WCF в обе стороны
14 сообщений из 14, страница 1 из 1
обшение с WCF в обе стороны
    #36618024
Iber
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
очень нужна помошь...проблема в следующем

делаю програму со следующей архитектурой клиент(silverlight) - сервис(WCF) - субдд(oracle)

клиент отсылает на сервис xml....
сервис принимает парсит и в цикле начинает добавлять в базу записи

проблема 1 как смотреть счетчик этого цикла на клиенте, чтобы реализовать скажем прогресбар...
проблема 2 как реализовать отмену(прекращение) с клиента этой процедуры добавления на сервисе...ну тоесть пользователь нажал отмена нак лиенте и сервис перестал добавлять.
...
Рейтинг: 0 / 0
обшение с WCF в обе стороны
    #36618156
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
цепляйте бесконечный прогресс на старте асинхронной операции и по завершении останавливайте.
...
Рейтинг: 0 / 0
обшение с WCF в обе стороны
    #36618337
Фотография bured
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пункт 2 - дурацкая затея. Интерактивности как таковой не будет. Пока мессадж "отмена" дойдёт до сервера, ещё хз сколько записей будет обработано.
...
Рейтинг: 0 / 0
обшение с WCF в обе стороны
    #36618384
Iber
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
бесконечный прогрес самое первое, что пришло в голову...но надо имено не бесконечный
...
Рейтинг: 0 / 0
обшение с WCF в обе стороны
    #36618389
Iber
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
даже так и было сначала, но патом возникла необходмсоть показывать есть загрузка на сервере или нет после того как открыл\закрыл браузер...насчет отмены не критично, что не сразу придет сообщение, если это возможно впринципе сделать, буду рад услышать как.
...
Рейтинг: 0 / 0
обшение с WCF в обе стороны
    #36618508
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Iberочень нужна помошь...проблема в следующем

делаю програму со следующей архитектурой клиент(silverlight) - сервис(WCF) - субдд(oracle)

клиент отсылает на сервис xml....
сервис принимает парсит и в цикле начинает добавлять в базу записи

проблема 1 как смотреть счетчик этого цикла на клиенте, чтобы реализовать скажем прогресбар...
проблема 2 как реализовать отмену(прекращение) с клиента этой процедуры добавления на сервисе...ну тоесть пользователь нажал отмена нак лиенте и сервис перестал добавлять.

Для такой реализации необходима транзакция и отсылка по одной записи - тогда и прогресс на клиенте и отмена
...
Рейтинг: 0 / 0
обшение с WCF в обе стороны
    #36618589
Iber
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
отсылка на сервис по одной записи или с сервиса в базу? если первое то так было первоначально, работало медленно, и я решил все на сервисе делать..если второе то так сейчас у меня...еше вот о чем падумал при отключении и падключении вцф наверна создает новый патомок сервисе каторый и вовсе не в курсе что делает его предыдущий собрат..ёпрст...

получается выход только в использовании бесконечного прогресс бара и не закрывание клиента?
...
Рейтинг: 0 / 0
обшение с WCF в обе стороны
    #36618592
Iber
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
и если тока так возможно то как реализовать отмену добавления этого несчасного при отрублении клиента?
...
Рейтинг: 0 / 0
обшение с WCF в обе стороны
    #36641463
isasa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Работать через Dual (например, wsDualHttpBinding).
Записи возвращать через CallBack.

Код: plaintext
1.
2.
3.
4.
5.
6.
public interface ICalcCallBCallback
    {
       [OperationContract(IsOneWay = false)]
       int OnGetRecords(List<DataType> data);
    }


где возвращаемое значение код возврата клиента.
Например <0 - прерывает серверный процесс
...
Рейтинг: 0 / 0
обшение с WCF в обе стороны
    #36641658
Фотография LR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
isasaРаботать через Dual (например, wsDualHttpBinding).
В SL это PollingDuplex, но все вызовы в SL асинхронны, придется разруливать ситуации "более раннее сообщение пришло позже".
Вдобавок, PollingDuplex может быть лишь синглтоном, и, похоже, автору придется перестраивать свой сервис, с возможной потерей производительности...
...
Рейтинг: 0 / 0
обшение с WCF в обе стороны
    #36642040
isasa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
LRно все вызовы в SL асинхронны, придется разруливать ситуации "более раннее сообщение пришло позже".

Обратный вызов делать Two-way

[OperationContract( IsOneWay = false )]
int OnGetRecords(List<DataType> data);

в цикле по мере чтения из курсора пересылать поциями.

Придут в порядке следования.
...
Рейтинг: 0 / 0
обшение с WCF в обе стороны
    #36642063
isasa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот синглтен уже хуже, т.к. во избежание блокировки надо делать, как минимум
[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Reentrant, ...)]
...
Рейтинг: 0 / 0
обшение с WCF в обе стороны
    #36642229
Фотография LR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
isasaОбратный вызов делать Two-way
Придут в порядке следования.
Обратный вызов тоже можно сделать только асинхронно, by design (да оно и понятно - неведомы пути сообщения по интернетке)

Конечно, синхронность можно самому организовать (нумеровать, дожидаться очередного номера и т.п.), но ради чего такое городить в данном конкретном случае?
...
Рейтинг: 0 / 0
обшение с WCF в обе стороны
    #36642314
isasa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
LR
Конечно, синхронность можно самому организовать (нумеровать, дожидаться очередного номера и т.п.), но ради чего такое городить в данном конкретном случае?

Ну ради прогрессбара, конечно, такое городить - это экстрим.
А если преравать чтение из курсора на уровне серверного процесса, то туда нужно "вклиниваться" каким-то образом.

ТС я так понял хочет именно этого.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / обшение с WCF в обе стороны
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]