Приложение WPF в ASP - PullRequest
2 голосов
/ 01 мая 2009

Есть ли способ превратить приложение WPF в приложение ASP? Или это совершенно не связанные технологии? Формат XAML так сильно напоминает мне HTML, что кажется, что есть выход.

Ответы [ 2 ]

4 голосов
/ 01 мая 2009

Приложение WPF - это приложение для Windows, а приложение ASP.Net - это веб-приложение. Эти две платформы имеют огромные различия, которые затрудняют конвертацию. В большинстве случаев это даже невозможно из-за различных ограничений и преимуществ этих платформ.

Для просмотра это может быть возможно, но если приложение WPF делает что-то вроде записи в локальную файловую систему или что-то изменяет на компьютере пользователя, это просто не будет работать в Интернете.

Если приложение предназначено для внутреннего использования, вы можете посмотреть в XAML Browser Applications (XBAP). У них есть только ограничения безопасности, которые вы можете обойти, подписав развертывание и распространяя правильный сертификат на клиентские компьютеры через домен. Отличительной особенностью XBAP является то, что они могут совместно использовать сборки с приложением WPF, поэтому преобразование приложения WPF в XBAP довольно тривиально.

Silverlight - это еще одна возможность, но между WPF и Silverlight есть довольно существенные различия, и для превращения приложения WPF в приложение Silverlight требуется больше переписывания, чем может показаться на первый взгляд. Движок Silverlight построен на основе .Net, но использует другую виртуальную машину и не совместим с двоичными файлами. Еще проще портировать, чем на ASP.Net!

Даже если вам удастся преобразовать XAML в ASP.Net HTML, у вас будут проблемы с небольшими различиями в поведении элементов управления. И если ваше приложение WPF использует основные функции WPF, такие как встраивание элементов управления в заголовки вкладок или применение преобразований, даже не думайте об этом.

1 голос
/ 01 мая 2009

Я не верю, что есть простой способ сделать это; это действительно в основном не связанные технологии. WPF отображается на вашем экране, в то время как ASP.NET отображает HTML для просмотра через браузер, и все конвейеры событий / данных совершенно разные.

Хотя вы можете несколько легко преобразовать ваше приложение WPF в приложение Silverlight, если хотите запустить его в Интернете.

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