繁体   English   中英

Asp.net Mvc:创建一个简单的cms

[英]Asp.net Mvc: Creating a simple cms

我正在尝试为自己和我的客户建立自己的CMS。 该系统主要用于<10页的小型网站。 对于更大的项目,我很可能会使用现有系统(MojoPortals,Umbraco,Kooboo)。 我之所以需要我自己的系统,是因为我有完全的控制权,而且因为现有的系统大多数都是膨胀的功能,我不会用于小型项目。 我也在学习Asp.net Mvc,这是构建我自己的系统的另一个原因。

这些是我尝试过的一些系统(比其他系统更多):

我喜欢的那个是MojoPortals。 主要是因为左中右+模块系统。

因此,我的目标是建立一个可以创建页面的系统,每个页面都有一个左侧,中间和右侧的模块占位符。 模块将是非常基本的(文本,Html,图像)。 该系统还需要易于部署和重用。

我已经开始研究我的系统了。

页面对象如下所示:

public class Page
{
    public int PageID { get; set; }
    public string Name { get; set; }
    public string Description { get; set; }
    public string Title { get; set; }
    public IEnumerable<Module> Modules { get; set; }
}

Module对象如下所示:

public class Module
{
    public int ModuleID { get; set; }
    public string ModuleTitle { get; set; }
    public string ModuleType { get; set; }
    public string ModuleLocation { get; set; }
    public Dictionary<string, string> ModuleValues { get; set; }
}

这就是我的View的样子: www.codepaste.com

稍后我可能会添加一个网站对象,其中包含将显示哪个视图(模板)的信息。

我现在的问题主要是关于这个观点。 我链接的视图有一些基本代码,首先检查模块位置,然后在正确的位置显示所有模块信息。 我希望那部分易于重复使用。 所以我想到制作一个强类型的局部视图来做左,右和中间的东西。 对于模块我也考虑使用部分视图并渲染某个moduleType的正确部分。 所以文本会有部分,html会有一个等等。 我不确定这是否是正确的技术。

那么我应该使用局部视图来处理左,中,右东西并使用局部视图来加载模块吗?

如果有人有关于构建基于模块的cms或技术/结构的其他信息,我可以使用它也会非常棒。

提前谢谢,Pickels。

是的,那是最好的选择。 使用css为每个模板设置“结构基础”,并使每个模块将自己的视图加载到正确的模板部分。 假设您的模板在公共标题下有一个顶级菜单,您可以在其中显示公司的徽标和内容。在数据库中插入有关模块和模板顶部的信息(您应该在数据库中完全创建一个关于模板的表结构,因此系统可以知道每个模块与每个页面相关的位置,并且只需使用系统将每个页面请求所需的模块放到正确的位置,使其将自己的视图加载到该位置。

希望你理解我的写作:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM