我需要设计一个基于 CMS 的网站,使用 asp.net 网络表单 (c#) 和 MS SQL Server 作为杂志网站的后端数据库,该网站每周都会发行。
样本数据
MagazinePages Table
PageID PageName LangID PagePositionNo PageURL PageInheritance //PageID
1 Home 1 10 Default.aspx 0
2 About Us 1 20 Page.aspx 0
3 PageOne 1 10 Page.aspx 2
4 PageTwo 1 20 Page.aspx 2
5 Media 1 30 Page.aspx 0
6 Video 1 10 Videos.aspx 5
8 News 1 40 News.aspx 0
9 Archive 1 50 # 0
10 Publication 1 60 Page.aspx 0
11 SpanishHome 2 10 Default.aspx 0
12 SpanisAboutUs 2 20 Page.aspx 0
------------------------------------------------------------------------------
Magazine
MagazineID MagazineIssueCode LangID MagazineTitle MagazineLiveIssue(CurrentIssue)
1 1 1 Mag Title 0
2 2 1 Mag Title 1
3 1 2 SpanisgMag Title 0
4 2 2 Mag Title 1
------------------------------------------------------------------------------
News Table
NewsID NewsTitle NewsCatID MagazineID Language
1 News one 100 1 1
2 News two 100 1 1
3 news three 200 1 1
4 News four 300 1 1
5 News Five 100 2 1
6 News Six 300 2 1
7 News seven 200 2 2
------------------------------------------------------------------------------
上述方法的问题是,只有当所有记录都在MagazinePages基于上述示例的情况下,我才能创建子菜单我可以为“关于我们”和多媒体创建子菜单我如何设计我的数据库,以便我可以从不同的表中提取数据例如按类别分类的新闻(政治、文化......)和杂志表中的问题(第 101 期、第 102 期、第 103 期......)
我打算为此使用 ASP 菜单控件,这可能不是很灵活,因为我将有超过 100 期杂志如何或哪个多列菜单可以与 asp.net 一起使用
我的数据库可能有很多流程,我会很感激这方面的帮助,以便我可以将这个数据库用于这个 CMS 系统。如果对此有任何疑问,请随时提出问题。
补充:如果我需要从MagazinePages
表中提取所有菜单名称,这很容易,但我被要求有一个菜单结构,如示例所示。问题是我可以为AboutUs
& Multimedia
from MagazinePages
Table 生成菜单,但我没有任何页面,如 Politics,Economic,... Issue 101, 102, 103.. 在此表中,因为该信息存储在不同的表中,如News Category
新闻表和Magazine
表中的问题。我宁愿改变我的表格设计并使其灵活地从单独的表格中读取菜单信息,但我不确定如何
此架构中未显示新闻表。
我所做的是我为 CMS 页面创建了 ps_Pages 表,例如 Home、Aboutus、Contact、MediaCentre .....
我将与杂志相关的页面(实际上是具有不同类别或标签的文章,如文化、政治、体育、人物......)存储在art_Article
表格中