Я создал универсальный класс контроллера
namespace OxygenFramework.MvcController
{
public class MvcController<TEntity> : Controller
where TEntity : class
{
public void UpdateModelState(TEntity t)
{
...
}
}
}
затем я использовал его, как показано ниже
namespace LeitnerMVC.Controllers
{
public class HomeController : MvcController<Account>
{
//
// GET: /Home/
public ActionResult Index()
{
UpdateModelState(t);
return View();
}
}
}
НО при запуске страницы приложения mvc отображается эта ошибка
The resource cannot be found.
Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable. Please review the following URL and make sure that it is spelled correctly.
после поиска в Интернете я нашел способ решить эту проблему
void Application_Start(object sender, EventArgs e)
{
ControllerBuilder.Current.DefaultNamespaces.Add("OxygenFramework.MvcController");
}
Но приведенное выше решение не работает для меня !!! и снова показывает ошибку Http 404
При использовании Controller вместо MvcController страница отображается без проблем!!!
Может кто-нибудь помочь мне ?
Обновление:
после многих исследований я понимаю, почему возникает эта проблема, но все же не знаю, как ее решить. КОГДА я перемещаю исходный код MvcController из моей сборки фреймворка (OxygenFramework.MvcController) и перемещаю его в проект MVC, MvcController работает, но когда я ссылаюсь на MvcController из сборки OxygenFramework, MVC показывает ошибку 404 !!! Теперь я знаю, что эта проблема возникает из-за того, что MvcController находится в другой сборке, но я не знаю, как решить эту проблему.
Внимание: только общая реализация MvcController находится в сборке OxygenFramework, а все контроллеры находятся в папке Controllers по умолчанию.