我正在开发一个网站及其内容管理系统(管理面板)。我想在具有前端的同一解决方案中添加我的管理面板项目。将管理面板开发为单独项目的原因是我不想混合管理模型,控制器和视图。
这可能吗?如果是,那么我将如何从我的前端调用管理面板。我将非常感谢开发网站管理员面板的其他想法。
答案 0 :(得分:0)
我将如何从我的前端呼叫管理员面板?
通过链接到它,就像你对任何网站一样。
由于这两个项目是单独的应用程序,因此它们将使用单独的URL部署到单独的实例。当应用程序A需要链接到应用程序B时,它将使用标准超链接:
<a href="http://localhost/ApplicationB">Admin Panel</a>
(或者无论应用程序B的URL是什么。)
由于此网址可以基于每个环境进行更改,因此您也可以将其存储在Web.config
中,可能存储在appSettings
中:
<add key="AdminPanelURL" value="http://localhost/ApplicationB" />
那么你如何获得视图的价值取决于你。也许模型有它,也许它在ViewBag
中,或者视图甚至可以明确引用System.Configuration
:
<a href="@System.Configuration.ConfigurationManager.AppSettings["AdminPanelURL"]">Admin Panel</a>
对于具有更多移动部件的大型项目,直接引用System.Configuration
可能过多耦合,但对于较小的项目,它应该可以正常工作。
答案 1 :(得分:0)
保持mvc结构和管理许多mvc项目代码的最佳方法是使用MVC区域,更多信息
http://msdn.microsoft.com/en-us/library/ee671793(VS.100).aspx或
http://www.codeproject.com/Articles/714356/Areas-in-ASP-NET-MVC