1

我有 2 个 MVC 项目。我想直接引用一个公共页面,而不必重新编写。我这样做是这样的:

public ActionResult test()
{
    OldController.Controllers.PatronController temp = new OldController.Controllers.PatronController();

    return temp.Index();
}

问题是,在“OldController”中有一些在 OnActionExecuting 函数中设置的功能。当我像上面那样调用函数时,不会调用 OnActionExecuting。

如何在两个项目之间共享公共页面(以便我可以返回它OnActionExecuting

4

2 回答 2

2

理想情况下,您希望在每个项目中保持导航一致,并且仍然重用核心功能。

出于这个原因,我建议:

1)创建带有动作部分(带有动作方法的部分 - 和控制器)的第三个 MVC 项目。

2) 将您的新 MVC 项目的引用添加到您的 2 个主要 MVC 项目。

3) 在您的每个主要 MVC 项目中,创建在视图中呈现您的动作部分的视图。

于 2013-01-20T19:10:06.783 回答
1

创建作为类库的第三个项目,并在该库中创建一个 ControllerBase 类,该类具有两个控制器之间的通用功能,并且在每个项目中都从该控制器类派生。

于 2013-01-20T19:16:48.173 回答