System.InvalidOperationException: Найдено несколько типов, которые соответствуют контроллеру с именем «Главная». Это может произойти, если маршрут, обслуживающий этот запрос ('{* pathInfo}'), не определяет пространства имен для поиска контроллера, который соответствует запросу. Если это так, зарегистрируйте этот маршрут, вызвав перегрузку метода «MapRoute», который принимает параметр «namespaces».Sitecore multisite с MVC не работает
Запрос на «Home» обнаружил следующие контроллеры соответствия: SitecoreMVC.Areas.Site1.Controllers.HomeController SitecoreMVC.Areas.Site2.Controllers.HomeController
Выше ошибка, которую я получаю, используя MVCAreas Кроме того, я расширил шаблон рендеринга контроллера и добавил еще два поля, которые являются зоной и пространством имен, и во время инициализации маршрута я делаю AreaRegistration.RegisterAllAreas();
Я также расширил GetRendererProcessor своим настраиваемым процессором, и я получаю сообщение об ошибке в controllerrunner в методе выполнения, поскольку complier не может разрешить правильный контроллер, в нижнем пространстве имен кода и области передается, но все же он вызывает ошибку.
AreaControllerRenderer.cs
public class AreaControllerRenderer : Renderer
{
public string Action { get; set; }
public string Controller { get; set; }
public string Area { get; set; }
public string Namespaces { get; set; }
public override string CacheKey
{
get
{
return "areacontroller::" + Controller + "#" + Action + "#" + Area + "#" + Namespaces;
}
}
public override void Render(System.IO.TextWriter writer)
{
var controllerRunner = new AreaControllerRunner(Controller, Action, Area, Namespaces);
string value = controllerRunner.Execute();
if (string.IsNullOrEmpty(value))
{
return;
}
writer.Write(value);
}
public override string ToString()
{
return "Controller: {0}. Action: {1}. Area {2}. Namespaces {3}".FormatWith(new object[]
{
Controller,
Action,
Area,
Namespaces
});
}
}
Пожалуйста, помогите !!
Я был в состоянии решить эту проблему, используя полное доменное имя контроллера с именем Ассамблеи, как показано ниже -
SitecoreMVC.Areas.Site1.Controllers.HomeController, SitecoreMVC
какая версия Sitecore вы используете? –
@sitecore альпинист - я использую Sitecore 8.0 –