Ron Anders Ответов: 1

Нужен ли мне http-прослушиватель?


У меня есть приложение mvc, которое работает под управлением iis7
Он должен получить данные из настольного приложения (Quickbooks) на том же поле для обработки.
У меня есть небольшое консольное приложение, также работающее на том же сервере, которое принимает веб-запросы на данные из приложения mvc и получает xml-данные из quickbooks для меня.

Затем я пытаюсь отправить эти данные обратно в приложение mvc.
Я получаю исключение тайм-аута. Если я укажу консольное приложение на fiddler, там будут запрошенные почтовые данные, красивые, как вам угодно, но если почтовые данные будут отправлены на localhost, то
приложение mvc просто сидит там, как будто я ничего не слышу. Я попытался отправить данные на "входную дверь" в полное доменное имя mvc, но это тоже не работает. Я думал, что iis справится с этим за меня.

Поэтому мой вопрос таков: Нужно ли мне писать явный слушатель в моем контроллере или я не думаю правильно?

Консольное приложение, которое принимает запрос на получение данных QB, находится на порту 3000.

WebClient myWebClient = new WebClient();

     try
     {
         byte[] response = myWebClient.UploadData("http://localhost:3000", byteArray);

         string qbdtrtn = myWebClient.Encoding.GetString(response);
     }
     catch (Exception e)
     {
         // timeout
     }


Что я уже пробовал:

Казалось бы, все под солнцем. :-)

Richard Deeming

Я изо всех сил стараюсь следовать твоему описанию. Это приложения MVC вызываю консольное приложение или консольное приложение вызова приложения MVC?

Из вашего описания следует, что консольное приложение вызывает приложение MVC. Но ваш код, похоже, отправляет запрос в консольное приложение.

1 Ответов

Рейтинг:
9

Ron Anders

Самостоятельно Решить

Я больше-Рон (все еще)

Все, что было нужно, - это сделать url-адрес консольного приложения http://localhost/<контроллер><функция> Вместо просто http://localhost-да.

Теперь, когда консольное приложение отправляет обратно данные, оно вызывает функцию в контроллере.


Richard Deeming

Не могли бы вы добавить детали того, как вы ее решили, к своему решению?

Или, если вы не думаете, что это поможет кому-то еще, удалите вопрос.

Спасибо.

Ron Anders

Я не могу его удалить. Или я бы так и сделал.

Richard Deeming

Вы уже второй человек, который сообщил об этом за последнее время. Может быть, вам сначала нужно удалить решение?
Ошибки и предложения[^]