设为首页
收藏本站
开启辅助访问
切换到窄版
登录
立即注册
中问网首页
我的收藏
站长博客
搜索
搜索
本版
帖子
用户
第一问答网
»
论坛
›
中问网
›
问答
›
解读ASP.NET Portal Starter Kit(1)——数据库篇 ...
返回列表
发新帖
解读ASP.NET Portal Starter Kit(1)——数据库篇
[复制链接]
11
|
1
|
2013-12-19 20:30:12
|
显示全部楼层
|
阅读模式
ASP.NET Portal Starter Kit数据库结构总体上来讲是由网站引擎的核心表(用户表、角色表和角色关系表)和各个用户模块相关的表组成。核心表存储整个网站的用户权限的配置信息(详细的用法及说明将放到《角色身份认证篇》中讲)。各用户模块存储各个功能模块的信息。各个用户功能模块表都是独立的。这样有利于新增模块扩展功能。同时也可将各个功能模块的表分别部署到不同的数据库中提高程序的高伸缩性和可扩展性。数据的访问方式是全部通过存储过程进行的。这样做的好处有:1、提高了数据库的性能;2、杜绝了SQL注入式攻击(在我的理解上应该是);3、可将可将连接到SQL Server数据库用户的权限只配置成只能对指定存储过程进行执行操作,这样就进一步提高了数据库的安全性。
数据库中的表:
Portal_Announcements:公告信息表(在公告信息模块中用)
字段名
类型
含义
备注
ItemID
Int
链接Id
主键(自动编号)
ModuleID
Int
所属模块ID
决定该公告在那个模块中显示(模块ID:用户配置文件PortalCfg.xml中的模块表ID,以下皆同)
CreatedByUser
Nvarchar(100)
创建者
记录创建和修改该公告的用户
CreatedDate
Datetime
创建时间
记录创建和修改该公告的时间
Title
Nvarchar(100)
名称
MoreLink
Nvarchar(150)
更多细节的链接
MobileMoreLink
Nvarchar(150)
移动细节链接地址
在“移动设备浏览器”上的更多细节链接地址
ExpireDate
Datetime
有效日期
Description
Nvarchar(2000)
描述
Portal_Contacts:联系方式信息表(在联系方式模块中用)
字段名
类型
含义
备注
ItemID
Int
链接Id
主键(自动编号)
ModuleID
Int
所属模块ID
决定该联系方式在那个模块中显示
CreatedByUser
Nvarchar(100)
创建者
记录创建和修改该联系方式的用户
CreatedDate
Datetime
创建时间
记录创建和修改该联系方式的时间
Name
Nvarchar(50)
联系人姓名
Role
Nvarchar(100)
联系人角色
与系统框架中的角色不同,理解成职位更合适
Email
Nvarchar(100)
联系人Email
Contact1
Nvarchar(250)
联系方式1
Contact2
Nvarchar(250)
联系方式2
Portal_Discussion:用户讨论留言信息表(用户讨论模块用)
字段名
类型
含义
备注
ItemID
Int
链接Id
主键(自动编号)
ModuleID
Int
所属模块ID
决定该讨论在那个模块中显示
Title
Nvarchar(50)
讨论标题
CreatedDate
Datetime
创建时间
记录创建该讨论的时间
Body
Nvarchar(100)
留言内容
CreatedByUser
Nvarchar(100)
创建者
记录创建和修改该讨论的用户
DisplayOrder
Nvarchar(100)
显示顺序
记录回复的讨论的时间和本身提交的时间 (可用作讨论留言的排序和显示回复关系)
Portal_Documents:用户上传文档信息表(在显示文档信息模块中用)
字段名
类型
含义
备注
ItemID
Int
链接Id
主键(自动编号)
ModuleID
Int
所属模块ID
决定该联系方式在那个模块中显示
CreatedByUser
Nvarchar(100)
创建者
记录创建和修改该联系方式的用户
CreatedDate
Datetime
创建时间
记录创建和修改该联系方式的时间
FileNameUrl
Nvarchar(250)
上传至服务器中的文件路径
FileFriendlyName
Nvarchar(150)
文档名称
友好的文件名称显示
Category
Nvarchar(50)
类别
Content
Image
内容(二进制)
上传到数据库中的内容
ContentType
Nvarchar(50)
类型
上传文件的类型
ContentSize
Int
大小
上传文件的大小
Portal_Events:事件信息表(在显示事件信息的模块中使用)
字段名
类型
含义
备注
ItemID
Int
链接Id
主键(自动编号)
ModuleID
Int
所属模块ID
决定该事件在那个模块中显示
CreatedByUser
Nvarchar(100)
创建者
记录创建和修改该事件的用户
CreatedDate
Datetime
创建时间
记录创建和修改该事件的时间
Title
Nvarchar(100)
事件名称
WhereWhen
Nvarchar(150)
发生地点
Description
Nvarchar(2000)
描述
ExpireDate
Datetime
有效日期
Portal_HtmlText:静态HTML信息表(在显示静态静态HTML的模块中用,可用于显示新闻等文本)
字段名
类型
含义
备注
ModuleID
Int
所属模块ID
决定该静态HTML在那个模块中显示(主键,限定一个模块只对应一个静态HTML文件)
DesktopHtml
Ntext
桌面HTML内容
MobileSummary
Ntext
移动摘要
在“移动设备浏览器”上显示的摘要
MobileDetails
Ntext
移动细节
在“移动设备浏览器”上显示的细节
Portal_Links:链接信息表(快速链接模块和连接模块用)
字段名
类型
含义
备注
ItemID
Int
链接Id
主键(自动编号)
ModuleID
Int
所属模块ID
决定该链接在那个模块中显示
CreatedByUser
Nvarchar(100)
创建者
记录创建和修改该链接的用户
CreatedDate
Datetime
创建时间
记录创建和修改该链接的时间
Title
Nvarchar(100)
名称
Url
Nvarchar(250)
链接地址
MobileUrl
Nvarchar(250)
移动链接地址
ViewOrder
Int
排序号
Description
Nvarchar(2000)
描述
Portal_Roles:角色信息表(门户网站引擎核心表)
字段名
类型
含义
备注
RoleID
Int
角色Id
主键(自动编号)
PortalID
Int
门户网址ID
可架设多个门户站点而共用一个数据库,通过PortalID区分
RoleName
Nvarchar(50)
角色名称
Portal_UserRoles:用户角色关系表(门户网站引擎核心表)
字段名
类型
含义
备注
UserID
Int
用户Id
关联用户信息表(Portal_Roles)
RoleID
Int
角色Id
管理角色信息表(Portal_Users)
Portal_Users:用户信息表(门户网站引擎核心表)
字段名
类型
含义
备注
UserID
Int
用户Id
主键(自动编号)
Name
Nvarchar(50)
用户姓名
Password
Nvarchar(50)
密码
采用MD5的加密方式存储
Email
Nvarchar(100)
用户Email
用于登录,并设置成唯一性索引(可防止注册相同的Email,这样设置后当有相同的Email插入时程序就会抛出异常,捕获这个异常就可判断Email是否重复,这样就可以省掉判断Email是否重复的代码)
数据库中的存储过程:
存储过程名称
说明
Portal_AddAnnouncement
添加新公告
Portal_AddContact
添加新联系方式
Portal_AddEvent
添加新事件
Portal_AddLink
添加新链接
Portal_AddMessage
新建一条新的讨论留言,其中@ParentID的参数为被回复留言的Id,通过该ID找到该留言的DisplayOrder,加上新增留言的时间就是新留言的DisplayOrder。
Portal_AddRole
添加角色信息
Portal_AddUser
添加一个新用户,返回用户的Id
Portal_AddUserRole
添加用户角色关系
Portal_DeleteAnnouncement
删除公告信息(注:以下删除部分若无特殊说明均为删除指定ItemID的信息)
Portal_DeleteContact
删除联系方式
Portal_DeleteDocument
删除用户上传文档
Portal_DeleteEvent
删除事件信息
Portal_DeleteLink
删除链接信息
Portal_DeleteModule
当删除一个模块时,联动的删除该模块相关的全部信息
Portal_DeleteRole
删除角色信息
Portal_DeleteUser
删除用户
Portal_DeleteUserRole
删除角色用户关系
Portal_GetAnnouncements
根据ModuleID(模块ID)返回有效期内的公告信息
Portal_GetAuthRoles
像是没有用到该存储过程,而且该存储过程涉及的表数据库中没有(在用户配置文件中有类似的表),需要在深入研究
Portal_GetContacts
根据ModuleID(模块ID)返回联系方式
Portal_GetDocumentContent
根据文档的(ItemID)获取存储在数据库中的文档信息
Portal_GetDocuments
根据ModuleID(模块ID)返回用户上传文档信息
Portal_GetEvents
根据ModuleID(模块ID)返回有效期内的事件信息
Portal_GetHtmlText
根据ModuleID(模块ID)返回静态HTML文本信息
Portal_GetLinks
根据ModuleID(模块ID)返回连接信息,并按(ViewOrder)排序号排序
Portal_GetNextMessageID
获取讨论的下一条留言
Portal_GetPortalRoles
获取指定门户站点(指定PortalID)的全部角色信息
Portal_GetPrevMessageID
获取讨论的上一条留言
Portal_GetRoleMembership
根据角色ID获取该角色对应的用户成员信息
Portal_GetRolesByUser
根据用户Email获取用户角色信息
Portal_GetSingleAnnouncement
根据公告的(ItemID),获取单个公告的信息
Portal_GetSingleContact
根据联系方式的(ItemID),获取单个联系方式的信息
Portal_GetSingleDocument
根据文档的(ItemID),获取单个文档的信息
Portal_GetSingleEvent
根据事件的(ItemID),获取单个事件的信息
Portal_GetSingleLink
根据链接的(ItemID),获取单个链接的信息
Portal_GetSingleMessage
根据留言的(ItemID),获取单个留言的信息
Portal_GetSingleRole
根据角色ID,获取单个角色的信息
Portal_GetSingleUser
根据用户Email,获取单个用户的信息
Portal_GetThreadMessages
根据父留言信息的DisplayOrder,返回按时间顺序和回复关系返回子留言信息
Portal_GetTopLevelMessages
根据ModuleID(模块ID)返回顶层留言信息
Portal_GetUsers
获取全部的用户信息,并按Email排序
Portal_UpdateAnnouncement
更新公告信息
Portal_UpdateContact
更新联系方式信息
Portal_UpdateDocument
更新文档信息,当未找到指定文档ID时添加新的文档信息
Portal_UpdateEvent
更新事件信息
Portal_UpdateHtmlText
更新静态HTML文本信息
Portal_UpdateLink
更新指定的连接信息
Portal_UpdateRole
更新角色信息
Portal_UpdateUser
更新用户信息
Portal_UserLogin
根据email和password返回登录的用户姓名(用于判断用户登录是否通过)
回复
使用道具
举报
千问
|
2013-12-19 20:30:12
|
显示全部楼层
GOOD!
回复
使用道具
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
千问
主题
0
回帖
4882万
积分
论坛元老
论坛元老, 积分 48824836, 距离下一级还需 -38824837 积分
论坛元老, 积分 48824836, 距离下一级还需 -38824837 积分
积分
48824836
加好友
发消息
回复楼主
返回列表
问答
热门排行
1
青 气 组一起念什么
2
800元左右的液晶显示屏
3
流产孕酮会直接下降吗
4
雪灾 翻译
5
上火会不会引起乳腺增生疼
6
做完人流可以用冷水洗东西吗
7
请教电脑维修,:怎么看是硬件故障还是系统故障?
8
未满有缘分吗 ?
9
孕妇吃柿子饼会流产吗
10
宫外孕初期流血流几天
11
魔兽争霸3 屏幕跳跃
12
药流第三天吃药后可以喝水吗
13
欲购节能灯,哪家企业做的最好??
14
白带发黄怎么治?
15
有专门为政府、各类企事业单位以及个人提供参加表演、编排节目以及教学教练的公司吗
16
求一个QQ群的名字!
17
无痛人流后可以直接结扎吗
18
高手帮忙写篇关于农村或者环境污染的日语短文吧
19
宜昌哪儿有卖USB保暖手套啊?
20
是没有丑女人 只有懒女人是谁说的
21
嘉源v130手机支持avi吗?
22
是成人考试还是什么?忘记了。
23
吃打胎药吃几天开始流血
24
当网吧网管工资多少一个月,当公司的网管又是多少钱个月?
25
益母草流产后怎么吃法
26
流产手术记录会查到吗
27
人流做多了更容易怀孕吗?
28
呼市那拍写真拍得好一点而且价格实惠、
29
他的鱼是被他妻子吃了。
30
【翻译】【急】【高分】汽车防盗系统英文怎么说
31
51怎么领取200积分
32
DNF中的回旋踢怎么和BBQ连起来?
33
maya2009安装问题啊
34
在澳门一个大集团做报纸,一个月6000多rmb是不是很少
35
生孩子隐瞒了以前流产,有问题吗
36
闭经1年半,吃黄体酮就来,不吃就不来,怎么办?
37
卧室的窗户开在客厅里好吗
38
快了大本营之徐若萱主题歌是什么
39
丈夫死了庄圆来了受伤的人别救活 产生了感情
40
明明痛经的感觉有了为什么还没来
41
人流后一般几天可以正常上班活动
42
玫琳凯的效果不好
43
38码等于多少公分呢?
44
乳腺增生后背疼怎么回事
45
周星驰最近在干什么
46
中国科学技术大学的优势学科是什么?这个大学在全国排名如何?
47
乳腺增生结节会随着月经周期变化吗
48
帅哥是什么样?
49
药流后复查要多少钱
50
人流后多久可以做瑜伽产后私教课
51
李小龙传奇
52
如果有子宫肌瘤做阴超能看到吗
53
痛经厉害可以打止疼针吗
54
妇幼保健院做人流挂妇科可以吗
55
盆腔炎烤电一次要多久时间最佳
56
怀孕初期喝牛肉汤会流产吗
57
如果怀孕了喝益母草会不会流产
58
做完人流有炎症可以塞药吗
59
流产后能吃妇炎康片吗
60
吃了打胎药孕囊是什么样的
61
做完钳夹术需要清宫吗
62
看清宫后的病人送什么好
63
孕酮达到多少可以药流
64
乳腺增生疼痛不吃药的话会怎么样呢?
65
宫外孕手术后不流血正常吗
66
药流吃药最后一天吃了多久有反应?
67
做完人流吃避孕药流血怎么回事
68
做完人流能不能直接带环
69
怀孕四个月查出子宫肌瘤怎么办
70
做完流产怎么知道流没流干净
71
人流后自己可以开车吗?
72
盆腔炎腰痛吃什么药效果好
73
梦想世界
74
人流后两个星期出血是怎么回事
75
布洛芬可以止痛经吗
76
两道初一英语的问题。急急急急急急急急急急急急急急急急
77
我很爱我的老公,在过一个月我就和他见面了,
78
有子宫肌瘤可以吃柚子桔子吗
79
子宫肌瘤可以吃莲子和百合吗
80
意外怀孕的宝宝会不会不健康
81
卵巢囊肿可以喝益气养血口服液吗
82
慢性宫颈炎可以用高锰酸钾坐浴吗?
83
怎么在网吧种灰鸽子?
84
月经期间同房会导致月经推迟吗?
85
自然流产对身体影响大吗?
86
宫颈癌一定宫颈糜烂吗
87
广州越秀区全部学校几号放寒假
88
3dmax 7 激活码
89
男人会带给女人什么妇科病
90
贴吧无法发贴跟回贴,号被封了怎么解决??
91
java好难学吗
92
2009年实行公积金不许提现,但我没用公积金贷款买房,我能提现吗?
93
女性闭经了还能过性生活吗
94
月经来了可以检查月经不调吗
95
无痛人流前一天晚上可以阴道用药吗?
96
1000mhzIntrl (R) celeron (TM) CPU 1000MHZ 可以加多大的内存
97
女性没有妇科病是怎样的
98
有妇科病能喝茶吗
99
人流后月经每个月都推迟怎么回事
100
限制下载