Как создать приложение для Windows 10, которое запускает автономный веб-сайт без IIS

#asp.net-core #webserver

#asp.net-ядро #веб-сервер

Вопрос:

Я хочу создать небольшое приложение для Windows 10, в котором пользователь может запускать и добавлять один файл (например, с помощью перетаскивания) 0. Затем этот файл можно загрузить по локальной сети, пока приложение остается открытым.

Сейчас я ищу наилучший способ сделать это без использования IIS. Я понятия не имею, с чего начать, поэтому был бы признателен за любой вклад. Насколько я могу судить.Net Core с Kestrel — хороший способ начать.

Комментарии:

1. Это, скорее всего, то, что вы ищете: learn.microsoft.com/en-us/aspnet/core/host-and-deploy /… . Что касается приложения для Windows 10, вы просто собираетесь использовать веб-просмотр, в основном, для подключения к этому.

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

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

Ответ №1:

Поскольку вы хотите иметь функциональность перетаскивания, вам нужно либо принять файл, перенесенный в .exe файл, либо иметь приложение Windows Forms или WPF, которое может принимать удаление файла.

В любом случае, вы можете запустить ASP.NET Ядро WebHost с включенным Kestrel в любом из этих решений, при условии, что оно выполняется в потоке, отдельном от потока пользовательского интерфейса ( Run() метод будет заблокирован).

Комментарии:

1. Итак, с точки зрения отправной точки, я должен обратить внимание на руководство, охватывающее ASP.NET Основной веб-хостинг с Kestrel?

2. Да; следуйте некоторым основным ASP.NET Основные руководства по запуску, а затем поиграйте с вашим Program.cs файлом, чтобы получить представление о том, как вы могли бы запустить WebHost из другого приложения.