asp.net-mvc - MVC项目架构支持模块

标签 asp.net-mvc asp.net-mvc-3 razor module

我需要我的 MVC 3.0 项目来支持模块。通过模块,我的意思是拥有单独的库,其中包括模型 View 和 Controller 。这样做的原因是具有可被多个应用程序使用的应用程序的可重用部分。

对我来说最好的办法是将这些模块作为 mvc 应用程序 - 让 resharper、mvc Visual Studio 插件工作。我的意思是智能感知、 Controller 导航、 View 和 Controller 创建屏幕等。如果我将这些类包含在通用类库中,那么功能就消失了。

将应用程序设置为使用“模块”应用程序中的 Controller 非常简单。

    routes.MapRoute(
            "Default", // Route name
            "{controller}/{action}/{id}", // URL with parameters
            new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
            , new[] { "ModuleApplication1.Controllers" }
        );

问题是 Controller 试图加载的 View 在当前应用程序中不存在,但它在我的“模块”应用程序中。更糟糕的是 - View 根本没有编译或嵌入到 dll 中。我不会复制它们。我更喜欢从 dll 加载它们。如果它是可能的。

我承认,我是 MVC 的新手。

我错过了什么吗?有什么解决办法吗?我的方法完全错误吗?

最佳答案

您可以使用MvcContrib可移植区域,它们正是为这种情况而设计的。

关于asp.net-mvc - MVC项目架构支持模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8939219/

相关文章:

c# - NUnit 对比 Visual Studio 2008 的单元测试测试项目

javascript - 打印数据表中的所有数据

jquery - 在 ASP.NET MVC 4 中通过 ajax 在客户端显示服务器端模型状态错误

asp.net-mvc-3 - 为什么asp.net mvc模型绑定(bind)器产生system.string[]

ajax - AJAC MVC3 Request 对象和原始 Ajax 数据到底在哪里?

javascript - 在 HTML 中按 Like SQL 查询分组

c# - 如何解决 DbContext 上的此 ASP.NET MVC 数据空构造函数警告?

asp.net-mvc - 金七静行难解

razor - 所有页面/ View 都需要 Blazor/Pages 文件夹吗?

razor - ViewStart.cshtml 似乎没有从 View 中读取