Как автоматически экспортировать данные из Silverlight на локальный диск - PullRequest
1 голос
/ 01 февраля 2011

Я провожу юнит-тестирование в Silverlight. У меня есть тестовые данные, и мне нужно экспортировать их на локальный диск без участия пользователя.

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

Кто-нибудь может мне помочь, как автоматически экспортировать данные из silverlight на локальный диск?

Ответы [ 2 ]

0 голосов
/ 10 февраля 2011

Я решил с локальным сервером, он предоставляет http веб-сервер, сервер политики и прослушиватель сокетов.

Сервер работает и: - прослушивает как http-сервер запросы страниц Silverlight.- прослушивать на локальном порту результаты теста silverlight, закодированные в формате xml; - прослушивать другой порт в качестве сервера политики, поскольку для подключения Silverlight требуется подключение к сокету

. Далее сервер запускает Internet Explorer, указывающий на его собственный веб-сервер.на странице модульного теста

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

Сервер имеет полный доступ к локальной файловой системе, поэтому может без вывода сообщений выводить.

0 голосов
/ 01 февраля 2011

Оформить ответ на этот ТАК вопрос . Он показывает, как получить доступ к локальной файловой системе, однако для этого требуется взаимодействие с пользователем.

Я бы просто добавил страницу в веб-приложение, в котором размещается плагин silverlight, позволяющий хранить данные локально. Вы можете опубликовать свои данные, и ваш бэкэнд (я полагаю, asp.net) хранит данные локально. Если вы уже используете WCF для общения со своим бэкэндом, вы можете использовать его вместо этого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...