2010-04-28 4 views
8

У меня есть виртуальный каталог под моим веб-сайтом MVC в IIS, называемый «Файлы». Этот каталог находится на том же уровне, что и мой каталог Views. Когда я ссылку на файл из моего приложения MVC в файл под моим каталог файлов, я получаю следующее сообщение об ошибке:ASP.NET MVC считает мой виртуальный каталог контроллером

The controller for path '/Files/Images/1c7f7eb8-5d66-4bca-a73a-4ba6340a7805.JPG' was not found or does not implement IController.

Он думает, что мои файлы VD является контроллером. Как получить доступ к моим файлам, как обычный VD без вмешательства MVC?

Спасибо.

ответ

2

ASP.Net сначала ищет каталог, а затем пытается сопоставить контроллер, поэтому то, что вы делаете, должно работать. Вы уверены, что файл с таким именем существует и доступен?

+1

Восстановленный IIS, и все работает. Благодарю. – kmehta

1

Я думаю, вы должны добавить вызов routes.Ignore() статический маршрут в файле Global.asax, так что .NET MVC знает игнорировать запрос:

RouteCollection.Ignore(String) - MSDN

23

При регистрации маршрутов попробуйте добавить следующие правила игнорирования.

public static void RegisterRoutes(RouteCollection routes) 
      { 
       /* Ignore static content, see 
       http://weblogs.asp.net/rashid/archive/2009/04/03/asp-net-mvc-best-practices-part-2.aspx 
       */ 
       routes.RouteExistingFiles = false; 
       routes.IgnoreRoute("Content/{*pathInfo}"); 
       routes.IgnoreRoute("Scripts/{*pathInfo}"); 
       routes.IgnoreRoute("Styles/{*pathInfo}"); 
       routes.IgnoreRoute("{*favicon}", 
        new { favicon = @"(.*/)?favicon.([iI][cC][oO]|[gG][iI][fF])(/.*)?" }); 

       //Ignore handlers and resources 
       routes.IgnoreRoute("{resource}.ashx/{*pathInfo}"); 
       routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 

       // your routes go here 
      } 
+0

Просто так. –

+0

Я знаю, что это старая школа, но я также добавил «routes.IgnoreRoute» («App_Themes/{* pathInfo}»), который решил проблему, с которой я столкнулся: http://stackoverflow.com/questions/21268124/getting- ан-ошибка-обслуживающие изображения, из-приложений-темы-при-использование-прекомпиляция –