Каков лучший дизайн в.NET для использования для отправки данных по ненадежному (3G) сетевое соединение?

Эти ошибки означают, что вы, вероятно, не следовали инструкциям по созданию хранилища ключей и / или принятию сертификатов.

Может быть проще начать с других примеров в модуле milo-examples. Это несколько не поддерживается и было удалено из следующего выпуска.

10
задан Christopher 11 December 2008 в 13:25
поделиться

7 ответов

Я избегал бы использования HTTP вообще от любого потока, который имеет UI, если Вы на самом деле не хотите заблокироваться, пока ответ не получен. Можно попытаться использовать ту же логику от фонового потока, который будет работать, пока она должна. Просто обязательно имейте логику, которая обнаружит, когда соединение будет потеряно (вероятно, от тайм-аута) и повторит в постоянном клиенте (но не частое) интервал до соединения снова.

Ваш лучший выбор создал бы своего рода фоновый рабочий процесс, который загрузит фотографии, после того как они сохраняются к каталогу Dropbox на устройстве. Я скажу, хотя то создание основанного на.NET фонового процесса не тривиально.

2
ответ дан 4 December 2019 в 03:39
поделиться

Сначала узнайте, почему это зависает - запросы просто находятся там? Они испытывают таймаут? Что происходит, если Вы понижаете установку тайм-аута?

Вы делаете POST от потока UI? (Не делайте этого :)

Вы могли потенциально обнаружить отбрасывание соединения путем выполнения запросов heartbeat с очень короткими тайм-аутами, также.

1
ответ дан 4 December 2019 в 03:39
поделиться

Вероятно, необходимо использовать WebRequest. BeginGetResponse вместо WebRequest. GetResponse, хотя там, затем кажется, не способ отменить ответ (возможно, избавляющийся от WebRequest поможет).

Кроме того, Вы могли попытаться играть со свойством Timeout WebRequest

1
ответ дан 4 December 2019 в 03:39
поделиться

Во-первых, я поместил бы процесс передачи за пределами приложения. Синхронизирующие файлы с утилитой, которая позволяет этому перезапускать передачу с середины последней передачи.

Можно моделировать коммуникационные отбрасывания с некоторым типом Клетки Фарадея.

0
ответ дан 4 December 2019 в 03:39
поделиться

Вы посмотрели на Синхронизирующую Платформу?

Надежда это помогает, Bruno Figueiredo

0
ответ дан 4 December 2019 в 03:39
поделиться

Способ протестировать это, не вынимая Ваш ноутбук в поля: попробуйте m0n0wall на запасной машине и установите ее правила брандмауэра для сжатия пакетов отбрасывания и пропускной способности.

С другой стороны, установите netlimiter на своем сервере/клиенте

1
ответ дан 4 December 2019 в 03:39
поделиться

Я попытался бы использовать ASP.NET, Кэширующий методы с сервисами Синхронизации ADO.NET для передачи данных.

попытайтесь кэшировать свои изображения в двоичный файл или формат BLOB сначала и сохранить их в локальной базе данных CE (или Экспресс). затем Синхронизация данные к центральной базе данных сервера, через WebServices.

Попытайтесь создать централизованный веб-сервис для обработки кэшируемых передач изображений.

Веб-сервис получил бы данные через Синхронизирующие сервисы в "иногда связанном" сценарии.

для поблочного тестирования попытайтесь использовать виртуальную машину (VMware) или ноутбук на коммутируемом соединении.

0
ответ дан 4 December 2019 в 03:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: