代码之家  ›  专栏  ›  技术社区  ›  ilija veselica

ASP.NET CMS和显示模板-2个项目还是仅1个?

  •  0
  • ilija veselica  · 技术社区  · 14 年前

    这是一个ASP.NET MVC初学者问题(我正处于开发阶段 NerdDinner )我有任务创建ASP.NET MVC CMS(有自己的设计)和门户(也有自己的设计),以显示CMS正在处理的数据。我想知道是否需要在Visual Studio中创建两个单独的项目,或者必须使用一个项目并将门户节放置在特定的文件夹中。
    我知道我的问题有点过早(事实上我还没有完成教程),但我有点不耐烦:)

    在服务器(商业主机)上,我将只使用一个主机帐户…对于我来说,URL路由的这一点有点令人困惑,CMS实际上也针对SEO进行了优化。

    我希望URL的结构是:
    ----门户----
    www.域名网
    www.domain.com/menu1/submenu1
    www.domain.com/menu2/submenu1/subsubsubmenu1…
    等。

    --CMS——
    www.domain.com/cms网站
    www.domain.com/cms/whatever网站

    谢谢,
    伊利

    1 回复  |  直到 14 年前
        1
  •  2
  •   lancscoder    14 年前

    这完全取决于门户和MVCMS的功能。

    对于初学者,我将为模型/数据访问提供一个单独的解决方案,这样就可以在不复制数据访问的情况下拥有尽可能多的MVC项目。

    根据您所需的URL结构,我可能将CMS作为单独的控制器和子文件夹。或者,如果您使用MVC 2,您可以查看区域支持,这可能会给您多一点灵活性。

    如果您希望解决方案更复杂/更灵活,您有许多选择:

    如果门户和MVCMS都将具有相同的功能和页面布局,那么您将拥有两个母版页,并在返回视图时确定要显示哪个母版页。您将在路由中指定此选项,以便多个路由指向不同的控制器。

    如果布局/功能稍有不同,但一个控制器仍然可以同时管理这两个项目,您可以有一个单独的控制器项目和两个仅包含视图、javascript和图像的MVC项目,这样两个MVC解决方案都可以查看您的控制器解决方案。使用此选项,您可能会在域中设置两个网站,一个位于根目录下,另一个位于CMS文件夹下(在MVC应用程序中,您可能需要阻止到/CMS的路由,以便CMS应用程序对其进行处理)。

    最后,如果两者相差很大,那么就有两个独立的项目,但要保留您的通用数据访问项目,如上所述,您可能需要在托管包上设置两个站点。