2013-11-15 4 views
3

Я очень новичок в ASP.NET. Я просто нашел что-то интересное, когда я пытаюсь создать приложение ASP.NET.Могу ли я создать приложение Windows Form с помощью ASP.NET?

Я создал кнопку, и написал следующий код в обработчик события Click:

protected void Button1_Click(object sender, EventArgs e) 
{ 
    Form FormMain = new Form(); 
    FormMain.Show(); 
} 

Затем я пытался добавить ссылку на System.Windows.Forms. Я побежал, и это сработало. Когда я нажимаю кнопку браузера, появляется форма WinForms.

Могу ли я использовать эту технику для создания настольного приложения, чтобы весь код находился в Интернете?

+0

Технически «весь код» находится в классах .NET, а не в WebForms WinWorms. – LINQ2Vodka

+0

Интересно. Вы пытались получить доступ к этой функции на другом компьютере в сети? Единственное, о чем я могу думать, может быть проблемой: что, если ваш пользователь не имеет той же версии .net framework, установленной на вашем компьютере? –

+0

Я не пробовал, мне интересно, попробовал ли кто-нибудь этот – nyongrand

ответ

5

Нет, веб-приложения запускаются на сервере.

Настольные приложения запускаются в клиенте.

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

Если вам нужно создать веб-приложения, используйте стандартные методы ASP.Net, которые доставляют HTML-код [+ JavaScript + CSS] в браузер. Вы можете выбирать между «традиционными» ASP.Net WebForms или ASP.Net MVC.

Если вам нужно создать Windows Desktop Applications, используйте WPF.

Если вам нужно создать Windows 8 «Стиль Metro», используйте WinRT XAML.

winforms совершенно бесполезен на данном этапе.

+0

Он, вероятно, не собирается публиковать WinForms где-то, но локально. Он будет работать, но я просто не могу понять причины, в которых он нуждается. – LINQ2Vodka

+0

На самом деле я уже делаю приложение Windows из настольного приложения C#, теперь я хочу превратить его в веб-приложение, но я действительно новый в asp.net, и я ищу лучшее решение для меня, чтобы это сделать. – nyongrand

+1

нет, вы не можете превратить его друг в друга :) Невозможно. Они работают по-разному. – LINQ2Vodka

1

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

Смежные вопросы