Как мне легко превратить приложение .Net Windows Form в приложение Asp.net с помощью Visual Studio 2005? - PullRequest
1 голос
/ 01 октября 2008

У меня есть довольно простое приложение для Windows. Весь код на C #. Я хотел бы превратить его в веб-приложение Asp.net. Как я могу легко это сделать?

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

Примечание: приложение Windows Form не делает никаких сетевых запросов или чего-либо еще ... просто читает некоторые текстовые файлы с локального компьютера.

Ответы [ 6 ]

4 голосов
/ 01 октября 2008

Здесь есть две большие проблемы; Во-первых - они могут выглядеть одинаково, но они реализованы совершенно по-другому - всю работу с пользовательским интерфейсом необходимо будет переделать, в основном с нуля. Тем не менее, вы, вероятно, сможете повторно использовать свой действующий код «делаю» (т. Е. Логику, управляющую файлами).

Второе - определить «локальный компьютер». Для приложения ASP.NET это обычно сервер, который может быть не тем, что вам нужно. Вы можете делать некоторые вещи на стороне клиента через javascript, но модель безопасности песочницы не позволит вам выполнить много операций ввода-вывода файлов.

Я бы посоветовал взглянуть на Silverlight, который находится где-то между ними, или просто использовать ClickOnce для развертывания существующего winform exe на удаленных клиентах.

2 голосов
/ 01 октября 2008

Вероятно, у вас будут проблемы с чтением файлов с локального компьютера через ASP.Net: для приложения ASP.Net локальный компьютер - это веб-сервер, а не компьютер, на котором сидит пользователь.

Кроме того, есть гораздо больше, чем вы думаете. Скорее всего, в вашем приложении вы полагаетесь на тот факт, что приложение Windows Form по своей сути имеет состояние, и переход на ASP.Net станет грубым пробуждением в этом отношении.

1 голос
/ 01 октября 2008

К сожалению, не все будет так просто. Ваш код и логика C # легко переносятся, но пользовательский интерфейс WinForms полностью отличается от пользовательского интерфейса ASP.NET.

Если вас интересует «веб-приложение», которое может быть спроектировано с использованием того же самого конструктора графического интерфейса, отличного от HTML, что и существующее приложение C #, посмотрите Microsoft Silverlight . Он предназначен для версии нового Windows Presentation Foundation (WPF, преемника WinForms) для Интернета.

1 голос
/ 01 октября 2008

Это будет зависеть от того, как разработано приложение. Если у вас есть вся «бизнес-логика» приложения в Windows Forms, вам будет трудно преобразовать ее. Если логика находится в своем собственном слое, это будет намного проще. Пожалуйста, поймите, что есть много различий между Windows и веб-формами; одна из самых больших заключается в том, что веб-формы отключены от пользователя, и информация о состоянии отправляется с каждым запросом. Winforms, безусловно, более полнофункциональный.

1 голос
/ 01 октября 2008

ASP.NET и Windows Forms - это две совершенно разные модели. Да, дизайнеры похожи, но базовое представление страницы / формы отличается. Основное отличие состоит в том, что ASP.NET не имеет состояния, поэтому вам нужно настроить метод хранения данных между операциями и передать их в объект Session.

Для локальных приложений, которые будут использоваться только вами, я рекомендую придерживаться Windows Forms.

1 голос
/ 01 октября 2008

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

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