这是整个系统结构的预览,话不多说,给个图:

本网站努力为每个人提供一个有效的校友录系统,为参与者提供一个简单有效的交流互动的平台,操作上要求简单、高效,性能上要求稳定、可扩展。在对同类网站系统进行了调查之后,通过重新设计,为网站使用者提供了如下的功能操作:管理员可以管理用户、用户可以搜索班级加入班级,进入班级后可以创建相册上传照片,可以留言发表评论,可以查看别人的通讯录发送小纸条,对于自己的上传的照片、相册可以进行删除操作,也可以退出班级,也可以删除自己的留言。

为了满足上面提出的功能需求,本网站应实现以下功能:

A.前台

a.注册与登录功能:此功能是必须功能,因为每个用户都不一样,而且每个用户的信息都十分宝贵,所以,需要口令进入是十分必要的。用户注册方面没有限制,也不进行实名认证,因为管理员有删除用户的权限,所以,在这个方面可以通过管理员进行控制。

b.查找、创建、加入、退出班级功能:此功能是本系统的核心功能,是实现的前提,因为校友录的一切信息功能都是基于班级的,虽然班级属于学校的下级,但是,学校其实只是班级的一个属性,没有人会针对学校进行什么活动。所以,此系统一定要提供查找已存在的班级,创建未存在的班级,加入已存在的班级,退出已加入的班级这四项前提性功能。

c.相册与相片的控制功能:此功能就复杂一些了,技术上是上传文件,前台是展现文件,此文件多人访问,但一人管理。只能删除自己上传的文件,却可以查看本班所有人上传和创建的相册。此功能是丰富校友录系统的一大特征点,是加强校友之间感情的必要所在,也是大家分享快乐的最佳途径。所以,非常有必要实现。

d.留言板功能:此功能与相册功能的实现相似,用户可以创建新留言,其它用户可以对此留言进行评论,留言的创建者可以删除留言,但是,由于留言功能的敏感性,不提供修改功能,要么存留,要么删除,修改会带了一些无法证明的争论。此功能是校友录的核心功能,也是几乎每个用户登陆都要查看的功能。

e.通讯录功能:此功能也是核心功能之一,在这里面,可以查看同班同学的个人资料,这也是校友录存在的意义,每个人修改了自己的校友录之后其它人都可以看到最新的信息,同时可以给已存在班级的用户发送小纸条,并且回复小纸条。

f.在线聊天室:此功能也是核心功能之一,进入班级之后,可以进入此模块,看见已经处于此模块中的同学,然后大家可以在这里一起聊天。我记得04年的时候,在线聊天室还是非常流行的,当时QQ聊天室就是其中之一,也是我喜欢去的地方,现在还清楚地记得里面的菁菁校园等房间,只是过去了的时光如同流逝了的岁月,永远不会再回来,再多也只是回忆而已。所以,这里放了一个这个,也是作为对当时决心要做IT的年少的自己一个交待吧~

B.后台

a.管理员用户管理模块:可以查看所有用户的信息,可以删除用户,也可以对用户进行密码重置,这给找回密码的用户提供的路径。密码丢失的用户可以与管理员联系,管理员可以重置此密码,然后通知用户。

b.管理员密码设置:此功能只有管理员可以使用,在管理员的密码被窃取之后,可以自己修改密码一保证系统的安全。

转载请标注原地址:http://www.cnblogs.com/ensleep/tag/%E5%9F%BA%E4%BA%8E.net%20mvc%E7%9A%84%E6%A0%A1%E5%8F%8B%E5%BD%95/

基于.net mvc的校友录(四、系统结构图)的更多相关文章

  1. 基于.net mvc的校友录(五、web.config对的配置以及filter实现的权限控制)

    web.config配置文件 此文件是整个系统的配置中心,它告诉iis服务器本网站需要哪些运行时环境,需要哪些环境,将要进行哪些操作,开发人员也会将一个常量性的数据放在此配置中,以备系统全局调用.此文 ...

  2. 基于.net mvc的校友录(七、文件上传以及多对多关系表的LINQ查询实现)

    图片的上传与调用 图片的上传就是文件的上传,在前台使用的是type="file"的input,但是,要将表单声明为multipart/form-data模式,方法是在BeginFo ...

  3. 基于.net mvc的校友录(六、codefirst的使用以及班级模块的关键部分实现)

    通过EF将新用户存入数据库 这里,探讨一下如何使用EF的code first将数据存入数据库,以及如何对用户的密码进行md5加密与验证.下面是用户登陆的前台代码. @using (Html.Begin ...

  4. 基于.net mvc的校友录(三、实体模型实现)

    实体模型设计 由于是实际开发,而且是时间比较紧的,所以,在开发实现过程中,总有一些对原计划的改动: AlumniBookModel数据库实体模型 这是主数据实体类,EF会根据此实体生成数据库,它的每一 ...

  5. 基于.net mvc的校友录(源程序)

    废话不多说,上程序再说: http://pan.baidu.com/s/11MnLo 我.net mvc4的正式学习时长,其实也就一个多月,期间除去玩游戏.听歌.谈恋爱,也就半个月,大神请轻喷~~ 转 ...

  6. “MVC+Nhibernate+Jquery-EasyUI” 信息发布系统 第四篇(用户管理功能的实现)

    “MVC+Nhibernate+Jquery-EasyUI” 信息发布系统 第四篇(用户管理功能的实现) 一.前三篇的内容是否对您有帮助呢?如果有的话,请您继续关注这篇吧,这篇主要是实现”用户管理“的 ...

  7. .NET MVC 学习笔记(四)— 基于Bootstarp自定义弹出框

    .NET MVC 学习笔记(四)—— 基于Bootstarp自定义弹出框 转载自:https://www.cnblogs.com/nele/p/5327380.html (function ($) { ...

  8. 通过Dapr实现一个简单的基于.net的微服务电商系统(四)——一步一步教你如何撸Dapr之订阅发布

    之前的章节我们介绍了如何通过dapr发起一个服务调用,相信看过前几章的小伙伴已经对dapr有一个基本的了解了,今天我们来聊一聊dapr的另外一个功能--订阅发布 目录:一.通过Dapr实现一个简单的基 ...

  9. 通过Dapr实现一个简单的基于.net的微服务电商系统(十四)——开发环境容器调试小技巧

    之前有很多同学提到如何做容器调试,特别是k8s环境下的容器调试,今天就讲讲我是如何调试的.大家都知道在vs自带的创建项目模板里勾选docker即可通过F5启动docker容器调试.但是对于启动在k8s ...

随机推荐

  1. shell脚本中的特殊符号

    1.{} 大括号:用法一:通配符扩展eg: ls my_{finger,toe}s这条命令相当于如下命令的组合:ls my_fingers my_toeseg: mkdir {userA,userB, ...

  2. C# 常用小技巧

    int? id 表示id是可以为null的整型 跟Nullable<int> id 是一样的 id ?? 1等于 id==null?1:id;

  3. 将ubuntu12.04中,gcc4.6/g++4.6版本降低到gcc4.4/g++4.4.

    降低Ubuntu中gcc和g++的版本 ubuntu 12.04 中带的gcc/g++都是4.6,将其降到4.4. 操作步骤如下: 一.降低gcc版本 1. $sudo apt-get install ...

  4. 配置server.xml后,启动tomcat 失败(Unable to start cluster)及解决方法

    在配置负载均衡环境过程中修改server.xml  后重启tomcat报错,报错信息如下 [root@Alice bin]# ./catalina.sh runUsing CATALINA_BASE: ...

  5. POJ C++程序设计 编程题#3 编程作业—文件操作与模板

    编程题#3: 整数的输出格式 来源: POJ(Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩.) 注意: 总时间限制: 1000ms 内存限制: 1000kB 描述 利 ...

  6. C#路径 (转载)

    一.获取当前文件的路径1.   System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName     获取模块的完整路径,包括文 ...

  7. 获取屏幕分辨率(C#)

    C#获取屏幕分辨率的方法 static void Main(string[] args) { // 控制台程序,需要添加程序集: // using System.Drawing; // using S ...

  8. Android照相机应用

    前言 Android在设计架构的时候,采用了mashup(混搭)的设计理念,也就是说一切都是组建,自己写的是组件,别人提供的也是组件,使用的时候只要符合相关协议就可以把他们当作自己的组件.比如系统提供 ...

  9. B-树

    定义: B-树是一种平衡的多路查找树,在文件系统中有所应用.主要用作文件的索引. 特性:(M为层数) 1.定义任意非叶子结点最多只有M个儿子:且M>2: 2.根结点的儿子数为[2, M]: 3. ...

  10. DevExpress BarManager 部分用法

    1.创建一个BarManager会默认产生三个菜单.BarManager右键ShowDesignTime enhancements会显示[add]按钮,可对菜单进行编辑. 2.其中比较有用的属性: 选 ...