Замок Виндзор IoC пытается разрешить файлы CSS (среди прочих)? - PullRequest
1 голос
/ 19 марта 2012
protected override IController GetControllerInstance(System.Web.Routing.RequestContext requestContext, Type controllerType)
{
    if (controllerType == null)
    {
          throw new HttpException(404, string.Format("The controller for path '{0}' could not be found.", requestContext.HttpContext.Request.Path));
    }
    return (IController)_kernel.Resolve(controllerType);
}

После использования Castle.Windsor в качестве моего решения IoC в течение нескольких месяцев, сегодня утром он начал выдавать странные ошибки.

В приведенном выше фрагменте разрешены мои контроллеры сконтейнер, но все suddent ControllerFactory (где находится этот метод) используется для экземпляров Content и Scripts, таких как:

«Контроллер для пути» /Content/images/ui-bg_glass_75_dadada_1x400.png'не может быть найден. "

Кто-нибудь знает, что может вызвать это?

Приветствия

Ответы [ 2 ]

1 голос
/ 19 марта 2012

Убедитесь, что вы зарегистрировали следующее IgnoreRoute:

routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

Подробнее см. http://msdn.microsoft.com/en-us/library/cc668201.aspx.

По умолчанию добавляется в новые проекты MVC3.

0 голосов
/ 11 августа 2014

У меня была та же проблема, и я обнаружил, что я включил css таким образом в ~ / Content / styles :

<link rel="stylesheet" type="text/css" href="@Url.Content("~/Content/styles/jquery-ui.css")" />

Но это должно быть здесь ~ /Content / themes / base :

<link rel="stylesheet" type="text/css" href="@Url.Content("~/Content/themes/base/jquery-ui.css")" />

Конечно, мне пришлось переместить сам файл в нужную папку.

Решение: Поэтому в моем случае расположение файла jquery * .css было в неправильной папке.Перемещение его в Content / themes / base и изменение справки css сделало свое дело.

...