Как использовать области с контроллерами из другой сборки?

StackOverflow https://stackoverflow.com/questions/4838420

Вопрос

Я начинаю новый проект ASP.NET MVC, и я решил поставить свои контроллеры в другую сборку. Evertyhing работает нормально, но я столкнулся с проблемой: я создал новую область в своем проекте MVC под названием Administration. У меня есть класс AdminController в моей отдельной сборке, который должен возвращать виды из моей области администратора, но каждый раз, когда он пытается вернуть представление, он ищет его в неправильном месте (~/admin/someview.cshtml вместо ~/Администрация /Admin/someview.cshtml) Как я могу сказать контроллеру искать виды в районе разыскиваемой?

Это было полезно?

Решение

Пожалуйста, посмотрите на эта статья. Анкет А также вы ответили, что была ответа на проблему здесь.

По сути, вам нужно будет расширить MVCViewEngine, чтобы сказать MVC искать ваши взгляды в отличие от Standatd Patows:

public class YourMegaViewEngine : WebFormViewEngine
{
    public YourMegaViewEngine ()
    {
        ViewLocationFormats = new string[]
        {
            "~/Views/Administration/{1}/{0}.cshtml" //I may be wrong for you case, but this is the place to puth you path
        };
    }
}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top