Список ограничений/ограничений Silverlight
Я видел и слышал о различных ограничениях Silverlight, например. файловые ограничения ввода-вывода, некоторые ограничения на отражение, ограничения на использование языков, печать, разрешение и т.д.
Не удалось ли составить список всех основных ограничений Silverlight по сравнению с полномасштабным .NET-приложением? Это для последней версии (4.0).
Я не прошу ссылки на класс, но высокоуровневые функции. Было бы неплохо предложить некоторые обходные пути, если они есть, но это не существенно.
Большое спасибо
Ответы
Ответ 1
Еще одна связка ограничений (кстати, некоторые из этих проблем можно обойти, используя режим вне браузера (OOB) с повышенным доверием + автоматизация с помощью WScript.Shell):
- Вы не можете взаимодействовать с реестром
- Вы не можете взаимодействовать с файловой системой.
Только с библиотечными папками (например,
Музыка, Видео, Картинки).
- Вы не можете использовать DllImport.
- Вы не можете использовать не общий
коллекции от System.Collections
Пространство имен.
- Если вы решите использовать версию Linux
Silverlight (Moonlight), тогда вы
не может вообще использовать OOB
- Вы не можете вызывать службы синхронно (доступны только асинхронные вызовы).
- Вы не можете получить синхронный ответ от HttpWebRequest.
- Silverlight не реализует хеширование MD5. (пользовательская реализация MD5 для Silverlight)
- Silverlight не реализует алгоритм регистрации RSA (был хороший веб-сайт с реализация алгоритма RSA для Silverlight. Но похоже, что он не работает пока.)
- Silverlight не реализует алгоритм регистрации Rijndael (для обратной совместимости вы можете использовать алгоритм AES с размером блока = 128)
- Silverlight не поддерживает кодировки ASCII/ANSI.
- Silverlight не поддерживает рисование 3D-объектов (вы можете использовать Kit3D или Balder).
Но есть хорошие новости. Например, вы все еще можете использовать OOB Silverlight для приложения OSX).
Ответ 2
Скорее всего, проще указать, что такое в Silverlight, чем не. Для этого вы можете просмотреть документацию Silverlight.
Однако вот несколько ссылок в документации, в которых перечислены некоторые ключевые проблемы: -
Совместимость WPF
Модель безопасности приложений Silverlight
HTTP-связь и безопасность с помощью Silverlight
Ограничения доступа к URL в Silverlight
Ограничения доступа к сети в Silverlight
Ответ 3
Если вы не используете приложение полного доверия, у вас нет доступа к локальной файловой системе. Это вполне разумное ограничение для веб-приложения.
Ответ 4
Я не знаю, найдешь ли вы этот relavant или нет, но я использовал WPF DataGrid и ненавидел его, потому что у него было свойство, что когда оно было в недействительном состоянии, оно не выйдет из режима редактирования, и из-за этого возникло много исключений.
Ответ 5
- Печать фактически создается с использованием растрового изображения, которое составляет 600 DPI; нет растрового текста или графики, что приводит к неровному контенту при закрытом экзамене
- Невозможно создать изменчивые дочерние окна, хотя вы можете использовать Tim Heuer floatable Window в качестве альтернативы
- Невозможно использовать интерфейс MDI
- Нет двойного щелчка, хотя вы можете использовать потоки с таймерами для имитации этого
- Нет поддержки WPF IMultiValueConverter, хотя вы можете использовать this в качестве альтернативного варианта
- Невозможно предотвратить загрузку заставки
- Поддержка Mousewheel варьируется в зависимости от платформы/браузера.
- Поддержка WS-Trust не поддерживается
- Поддержка WCF ограничена базовой привязкой http
Ответ 6
Это больше хлопот, чем того стоит. Слишком много ограничений для подсчета.