2017-01-27 13 views
1

У меня есть приложение Web API 2, размещенное на IIS.OwinStartup прекращает стрельбу с IIS (но все еще работает с IIS Express)

Чтобы настроить Owin, он имеет класс запуска, похожее на это:

[assembly: OwinStartup(typeof(Startup))] 
namespace Application.Api 
{ 
    public partial class Startup 
    { 
     public void Configuration(IAppBuilder app) 
     { 
      ConfigureAuth(app); 
      throw new Exception("Owin startup class fired"); // Added for test pourposes 
     } 
    } 
} 

приложение работает как шарм, пока он не остановится ни стрельбы Startup класса: нет каких-либо изменений в файле конфигурации, нет пакетов обновлений файл Microsoft.Owin.Host.SystemWeb.dll присутствует в папке бен, конфигурация в порядке, и т.д.

только он перестает работать, но если я устанавливаю проект как запуска проекта и запустите его с помощью F5 с использованием IIS Express загрузочный класс загружен правильно.

Я проверил другие сообщения с, вероятно, вызывает не повезло:

т.д.

ответ

0

Кажется, проблема с Файлы TEMP от ASP и IIS.

Таким образом, чтобы исправить это, я последовал за следующие действия:

  1. От Visual Studio, Строят =>Очистить решение.
  2. Закрыть Visual Studio.
  3. Удалить все файлы из вашего проекта bin folder.
  4. Удалить все файлы из вашего проекта obj folder.
  5. Удалить ASP.Net временных файлов: на моей установке, они расположены в: C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root и в: C:\Users\[Your User]\AppData\Local\Temp\Temporary ASP.NET Files\.
  6. Удалить Временные файлы IIS. Вы можете найти местоположение, открывающее ваш диспетчер IIS и выбрав .NET компиляции: enter image description here Into Сборки группы вы увидите настройки Временный каталог: enter image description here (G: \ TEMP в моей установке)
  7. Удалить ваш API проект сайта с IIS , и добавить еще раз.
  8. Ввести Visual Studio, Построение =>Реконструкция решения.
  9. Проверьте его.

Я надеюсь, что это поможет кому-то; Я провел много времени с этой неприятной проблемой.