当前位置 > 首页 > Asp.net

Asp.net MVC 3 开发企业网站系统仿照博客园部分功能--总体设计

2012-12-5 23:53:00来源:Asp.net

在使用Asp.net MVC3 开发企业网站系统的提议得到了广大园友的热情鼓励,也使我更加有信心和决心把这个简单的系统完成的希望。

前两篇索引:Asp.net MVC 3 开发一个简单的企业网站系统      Asp.net MVC 3 开发简单的企业系统开篇--数据库

麻雀虽小,五脏俱全。做一个小的企业网站我们也不能例外,上篇我们说了做这个网站应该具有的数据库设计阶段。按照工程理论来说,我们应该进行的就是总体设计了。

好吧,废话不多说,咱们一起来讨论一下这个简单网站的总体设计应该如何进行。

首先,我们确定具体的功能以及采用的实现接口。

1.登录、用户注册。说实话,在 企业网站中一般不需要用户的注册,但是因为我们仿照的是博客园,我们天天都会来的地方,所以也加上用户登录和注册功能。

当然,只要涉及到用户的功能,那么权限管理也应该是必需品了。

2.用户的权限管理组件。在MVC中处理这个相对Web form 要简单很多,可以在注册全局Filter特性来完成这个功能。

3.博客园左侧的分类列表显示

对于这个功能,当然我想首选肯定就是MVC中经典的PartialView。

4.博客园首页中间部分的博客列表功能。这个博客园采用的是Ajax方式进行的异步提交方式,当然这涉及到无刷新,提高用户体验的功能。我们也不能落后,采用的依然就是Ajax+Json的处理方式,当然分页是一个问题。需要采用分页组件,我能想到的就是MVCPager,不知道园友们有没有其他组件或者更有效的分页方法。

5.博客详细内容页面。这个应当是所有要实现的内容中最简单的一个,至少我个人是这么觉得。不要鄙视我奥

6.博客评论页面。采用KindEditor在线编辑器,使用户进行评论。我起初的设想是把这个评论显示页面也做成PaitialView的形式,也是采用Ajax进行提交。但是这样做,我心理总是感觉怪怪的,但是也找不到更好的办法,如果各位园友有什么好办法,请您务必告诉我,让我的大脑也见识一下。

7.搜索功能。类似于博客园的找找看功能,这个当然就是用到我前面所列举的框架中的伟大的Lucene的移植版本—Lucene.net。吐槽一下,为了更好、更有效率的实现搜索,我把博客园中关于Lucene.net的文章基本看了一遍,但是我发现所用版本都是2.3,而现在最新版已经是3.0了,所以我果断的从官网下载了最新版,我准备把3.0版研究一下,但是没有对应的文档,如果各位有什么好的全面的资料。请告诉我。

还有就是当然采用Lucene.net 3.0是必须的,但是中文分词,采用的是大牛的盘古(很霸气的名字)分词2.3版。

当然还有一个不得不提,就是程序自动化。Quartz的移植版本Quartz.net到来了,我们会使用它定时的使用Lucene.net建立索引,毕竟机器比人准时很多。

8.说了前台了,还有很重要的后台管理,前后台搭配,干活也不累。后台采用的就是easyui,当然还有很多其他的基于jquery的框架,我脑袋笨,只能采用easy的了。

9.性能优化。我常听我老大说,做一个网站很简单,网上一找一大堆,但是真正达到需求的不多。其中,性能就是一个因素。性能优化,硬件上固然重要,但是在软件上下功夫更节省。

各种免费的性能优化的工具当然我们要采用了,缓存就是首选,Memcached就是我的选择,你问我为什么不用自带缓存而用Memcached?我只能说是我在公司就用这个,而且这个扩展性高,自带的缓存功能弱,扩展性差,不灵活。

10.说完了性能,当然人无完人,程序也会出错。现在就是日志出马的时候了。再来一个就是Log4的移植版本Log4Net了,可以记录日志到文本、数据库等存储介质中。

11.可能大家要说了,怎么没看见曾经提到过的其他框架了,是不是因为不会而不敢使用了!其实真有这个可能,但是我是一个顽强的不倒翁,自夸呵呵。Ioc(依赖注入)、Nhibernate(Entity framework)还有Npoi.net都不属于要实现的功能范围内,这些只是减少我们维护代码的时间,减少出错的几率。但是他们更复杂,更值得我们研究学习,至少我这么觉得。

Npoi.net就是一个对Excel进行操作的组件,可以对Excel进行360度的操作,只有想不到,没有做不到。使用他就是为了导入数据需要。毕竟新建的系统中数据是空的,导入一些看着也舒服。

好了,本来要说总体设计的,没想到扯来扯去竟然说了那么多废话,唉,离高手还有很远啊!

道路仍然很远,同志们仍须努力~~~~

不写了,打了那么多字,累死了,看会电视先

本文链接



  • 【原创】ASP.NET MVC3使用html编辑器(kindeditor)

    2012-3-10 20:57:00

    小弟刚接触MVC3.0,虽然已有几年web开发,也使用过fckeditor,xheditor,freetext,kindeditor等html在线编辑器。 但是在MVC环境下还没有使用过。今天

  • ASP.NET Web API Basics

    2012-5-25 2:59:00

    We have seen that now web is really becoming cross plate form and you can see your services or API

  • C# 4.0: Alternative To Optional Arguments

    2010-4-20 7:39:00

    Like I mentioned in my last post , exposing publicly methods with optional arguments is a bad prac

  • [召集] .NET Framework基本类库中的设计模式

    2007-5-29 9:53:00

    摘要: 现在研究设计模式的人很多,研究.NET设计模式的也不在少数。但大家的研究都是靠自己YY一个应用场景,然后写一些“样例”代码实现之。这离实际应用太遥远了。 Anders Liu希望能通过

  • “计算和创新的新纪元”--记2009微软秋季校园行北邮站

    2009-10-19 1:36:00

    摘要: 记录2009微软秋季校园行北邮站的内容。 作者资料: 施炯 我的主页 个人资料 我的闪存 与我联系 ---------------------------

  • 基于web信息管理系统的权限设计分析和总结

    2009-5-21 12:37:00

    摘要: 在大部分的系统中都是用的基于角色控制模型的权限管理。在这样的系统中,创建一系列的角色,然后把基本权限单位分配给这些角色,再把角色分配给用户,这样用户登录系统后,就根据当前用户所拥有的角色可以

  • 13个绚丽的Jquery 界面设计教程

    2010-1-14 9:30:00

    阅读: 303 评论: 3 作者: 灵动生活 发表于 2010-01-14 08:58 原文链接 今天共享一些令人振奋的UI教程,这些UI大部分是基于Jquery的插件,主要

  • NHibernate学习之一:Many2One遇到的问题

    2007-7-20 10:18:00

    摘要: 博客园有不少优秀的NHibernate起步的教程,但很多的都是官方StartKit的教程,关于如何来解决初学者所遇到的问题上,以及对NHibernate使用中一些关键点如何理解上所述甚少。本

  • 基于三层架构的MVC模式应用示例源码

    2009-6-7 17:18:00

    ASP.NET MVC是微软官方提供的开源MVC框架. 在经过了漫长的preview和2个RC版本后, 终于发布了1.0正式版本。自从微软发布ASP.NET MVC框架1.0正式版,对于MVC的讨论

  • ASP.NET - 全球化资源文件[Web Forms]

    2012-5-24 18:11:00

    I:本博文代码示例效果图 好久没来写随笔了.不多说先上大饼! 跟着直接上 [ 代码下载地址 ] II:ASP.NET 资源文件介绍 在ASP.NET特殊文件夹内有那么两个