Поддержка Silverlight OOTB для диалогового окна браузера «Сохранить файл» - PullRequest
3 голосов
/ 17 декабря 2009

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

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

  1. Я слышал, вы можете передать пользователю файл «Сохранить как» в его браузере при обычном использовании SL. Есть ли подобная функциональность с OOTB? Потому что я хочу иметь возможность сохранять некоторые локальные файлы в других местах, кроме песочницы (с разрешения пользователя)?

  2. Можно ли настроить OOTB для разрешения доступа к файловой системе вне песочницы?

  3. Есть ли способ программно определить, работает ли приложение silverlight в режиме OOTB (поэтому я знаю, в каком режиме должно работать приложение)?

  4. Есть ли в моих идеях какие-либо серьезные недостатки, которые могли бы предотвратить такую ​​возможность?

1 Ответ

0 голосов
/ 17 декабря 2009

Silverlight 4 обеспечит поддержку доверенных приложений вне браузера, которые имеют больше привилегий, чем обычное изолированное приложение, но все же не так много, как обычное настольное приложение. Что касается доступа к файлам, доверенное приложение сможет получить доступ к некоторым предопределенным папкам, таким как MyDocuments, MyMusic, MyPictures, MyVideos , но не ко всей файловой системе. Подробности смотрите здесь: http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-trusted-applications.aspx

Что касается того, как узнать, работает ли у вас браузер или нет, используйте Application.Current.RunningOffline.

Наконец, я рекомендую вам взглянуть на PRISM . Помимо прочего, это облегчает задачу совместного использования кода между WPF и Silverlight, поэтому вы можете рассмотреть возможность разработки приложения SL + WPF с двумя вариантами.

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