2014-01-09 2 views
0

Я перехожу из Java в C#/Asp.NET для проекта. Насколько я вижу, синтаксис очень близок к java. Но у меня есть несколько вопросов, которые помогут мне начать. Я хочу создать веб-страницу в качестве интерфейса. Этот фронт-конец должен иметь возможность загружать файлы, когда инициируется новая загрузка файла, с помощью которого выполняется локальное приложение, обрабатывая файл через несколько разных программ.Связь между веб-страницей ASP.NET и серверным приложением

Но я немного смущен относительно того, как я добьюсь связи между локальной «программой управления» и веб-страницей, запущенной на веб-сервере. Приложение будет работать на том же компьютере, что и веб-сервер. Но как бы вы общались между приложением и веб-сервером?

Пользователь загружает файл с сайта -> (Сайт уведомляет локальное приложение, которое добавляется новый файл (это запутанная часть). -> Обрабатывает файл и отправляет подтверждение на веб-страницу/базы данных, как только это сделано

Мне просто нужно что-то начать читать, поэтому любая помощь приветствуется.

+0

Похоже, вы ответили на свой вопрос - начните читать ... До сих пор ваш вопрос оффтопик как эфир «поиск ссылок/инструментов» или дублирование многих «как запустить исполняемый файл с страниц ASP.Net». –

+0

Да, возьмите хорошую книгу на ASP.NET MVC. Затем посмотрите на этот поток: http://stackoverflow.com/questions/5193842 –

+0

'Насколько я вижу синтаксис очень близок к java' - это было правдой 10 лет назад. С тех пор 'C#' [эволюционировал] (http://en.wikipedia.org/wiki/Language_Integrated_Query). –

ответ

2

Основная информация о том, как работают ASP.net и IIS (возможно, я немного отключусь). По запросу IIS генерирует поток для рабочего После того, как поток запроса рабочего процесса завершит свою работу, он будет удален. Поэтому, если вы создали приложение для выполнения чего-либо из asyn.net async, как только запрос будет завершен. Это приложение будет закрыто, неважно, выполнит ли он свою задачу или нет. Если вы должны были запускать приложение синхронно, вам никогда не понадобится локальное приложение, запрос будет ждать, пока он завершит свою задачу и не закрыт, затем он перейдет к завершению веб-запроса.

Таким образом, вы можете подключить локальное приложение для мониторинга что-то вроде папки или базы данных для внесения изменений, выполнить свою задачу и затем обновить центральный хранилище данных, где asp.net может проверить, завершено ли оно. После того, как он будет завершен, обновите интерфейс. (возможно, ajax или signalR для проверки изменений)

Выполнение таких действий, как то, что вы хотите сделать. Это хорошая идея отделить приложение от веб-сайта и написать их, чтобы они могли работать самостоятельно. Таким образом, Asp.net не имеет зависимости от локального приложения и наоборот. Но они могут совместно использовать зависимость, такую ​​как база данных или общий сетевой ресурс. Таким образом вы можете перемещать веб-сайт вокруг и приложение с любыми проблемами. Кроме того, вы сократите риски безопасности, не имея, чтобы дать пользователю ASP.Net повышенные разрешения для выполнения другого приложения и т.д. (это просто мысль)

Некоторые подобные вопросы:

Two-way communication between ASP.NET Web App and C# Application

How to communicate between ASP.NET & C# Application

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