仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 623|回复: 8
打印 上一主题 下一主题

[学习教程] ASP.NET网站制作之Community Server专题一:概述Communit...

[复制链接]
金色的骷髅 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:35:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
可怜的程序员,还是逃不出移植的命运!server  CommunityServer(CS)是一个十分优异的Asp.net开源软件,今朝官方公布的体系中包含三个部分:Asp.netForums、DotText、Gallery。假如你是某个以CS构架网站的会员,你能够很简单的就具有一个Blog、一个相册、还能在论坛上与别人一同举行会商,如许就构成一个以User为中央的社区,这也就是起名为CommunityServer的意义地点了。
  CS的构架很奇妙,三套底本分歧的开源软件在TelligentSystems的勉力下分离在了一同,一致举行用户办理与权限设置(Menbership)、一致举行非常处置、一致举行当地化资本办理(多言语完成)等等。固然这不克不及完全地当作是Portal完成,可是从代码角度看已十分模块化了,能够疾速的举行扩大同时又能取得很好的功能。完成这些次要依托工程中的两个项目:CommunityServerComponents与CommunityServerControls。
  CommunityServerComponents中包括一些全局营业逻辑类,如:Globals、Context等、一些接口和用来承继的父类,如:Group、Section、Thread、Post等、另有就是完成Membership的实体类。非常处置与UrlRewrite是经由过程承继IHttpModule接话柄现的,固然要完成IHttpModule的承继就必定要举行设置,该项目中经由过程类CSConfiguration完成了一些全局的设置等。HttpHandler也失掉了使用,次要是处置一些不存在的Url,如读取用户头像的时分就是利用的HttpHandler。缓存作为Web程序进步运转效力最无效的办法之一在该项目中次要是在CSCache类中,该类没有甚么深邃的代码次要是对缓存办法举行包装,然后供全局一致办理。
  CommunityServerControls偏重的是UI体现的营业逻辑,个中包括的良多公用的用户自界说控件,典范的就是Editor、ResourceLabel,ResourceLabel几个项目中的web页面下基础都有他的身影。该项目另有一个主要的目标就是供应Skin功效,TemplatedWebControl为Forums、Blog、Gallery几个项目供应Skin的基类,固然假如你扩大CS增加本人的项目,也是必要承继TemplatedWebControl,详细怎样完成换肤前面会有专题举行独自的先容,Asp.netForums本来换肤利用的是皮肤的全名(如:Skin-PostView.ascx),可是在如今的项目中不必要供应全名只在基类中供应“Skin-{0}.ascx”,以后用GetType().Name失掉{0},组合后就是全名了。也就是说只需必要扩大皮肤类的类名和皮肤的{0}名字不异,就能够主动的找到他对应的Skin,小小的改善便利了很多。CS利用Membership一致用户与权限办理,而用户与权限办理作为一切扩大项目标基本,因而CommunityServerControls中完成了Membership的UI营业逻辑。
  CommunityServerForums、CommunityServerGalleries、CommunityServerBlogs就是三个使用项目标完成了,三层布局,经由过程大批的承继,笼统等等完成的。CommunityServerGuestBook是一个复杂的扩大项目,剖析代码你会发明实在CS的扩大式十分简单的,并且高效。
  CS在数据库方面也有一些优异的计划,如全体利用存储历程,良多时分妙手城市告知你,在项目中全体利用存储历程是不睬智的,可是CS确如许做。关头一点是他有一个SqlGenerator类和一些xxQuery类,这些类能够依据请求发生SQLText(次要是一些多变的Search和Post查询),然后这些SQLText作为存储历程的参数被传进,最初利用EXEC实行它失掉必要的了局。SQLText比起存储历程来的天真,但简单呈现毛病最初被使用呈现SQL注进打击,CS如许的做法一石二鸟,固然这必要更多的工夫往编写代码。另有就是用存储历程完成的数据分页读取等。
  CommunityServerWeb项目是一切webpagehtml、资本文件、设置文件、js等的汇合。该项目自己没有逻辑代码,剖析次要是目次的布局与布置。
  CS与Asp.net2.0的干系亲切,Membership、Localization、MasterPage、UrlRewrite这些在Asp.net2.0中眼生的辞汇在CS中你能够很简单看到它们的完成,不但是使用,你能够经由过程代码看到它们是怎样完成的。
  说了良多长处,最初说一下弱点:因为CS的前身是Asp.netForums,在今朝公布的版本中还能够很简单的看到Forums残留的影子,假如不懂得其开展的人剖析起来一些变量会让你摸不着思想,别的基本构架部分也有一部分代码与Forums跌在了一同,不外我想跟着下一个版本,大概下下个版本的公布CS会更有吸引力,我长短常但愿CS下个版本公布的时分到场WebPart等更多的特征。
  你能够经由过程以下地点下载到源代码:http://communityserver.org/
  官方站 http://communityserver.cn/由宝玉倡议的中文站
中间码是基于一个虚拟机器。源代码是最高层的,理论上从源代码开始直接编译成本地码能提供最大优化的。而中间码只能是转译成本地码,效率上难免受到损耗。根据虚拟机器所设定的体系结构的特点,和本地机器的差异的多少。
若相依 该用户已被删除
沙发
发表于 2015-1-19 17:58:59 | 只看该作者
以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上PHP/JSP,其次就是缺乏完善的纠错/调试功能,这点上ASP/PHP/JSP差不多。
分手快乐 该用户已被删除
板凳
发表于 2015-1-26 12:01:02 来自手机 | 只看该作者
有一丝可惜的是,这个系列太强了,Java阵营的朋友根本就是哑口无言...争论之火瞬间被浇灭,这不是我想这么早就看到的,但是值了。
精灵巫婆 该用户已被删除
地板
发表于 2015-2-4 15:11:17 | 只看该作者
碰到复杂点的问题都不知道能不能解决,现在有点实力的公司都选择自已在开源的基础上做开发。但没听说过有人在IIS上做改进的,windows、sqlserver集群方面的应用也很少见。
活着的死人 该用户已被删除
5#
发表于 2015-2-10 02:28:58 | 只看该作者
虽然在形式上JSP和ASP或PHP看上去很相似——都可以被内嵌在HTML代码中。但是,它的执行方式和ASP或PHP完全不同。在JSP被执行的时候,JSP文件被JSP解释器(JSPParser)转换成Servlet代码,然后Servlet代码被Java编译器编译成.class字节文件,这样就由生成的Servlet来对客户端应答。所以,JSP可以看做是Servlet的脚本语言(ScriptLanguage)版。
不帅 该用户已被删除
6#
发表于 2015-2-28 15:40:17 | 只看该作者
HTML:当然这是网页最基本的语言,每一个服务器语言都需要它的支持,要学习,这个肯定是开始,不说了.
柔情似水 该用户已被删除
7#
发表于 2015-3-10 01:41:51 | 只看该作者
有一丝可惜的是,这个系列太强了,Java阵营的朋友根本就是哑口无言...争论之火瞬间被浇灭,这不是我想这么早就看到的,但是值了。
小女巫 该用户已被删除
8#
发表于 2015-3-17 04:09:01 | 只看该作者
在asp.net虚拟主机的服务提供商中,目前首推的是CNNIC的其中一家域名注册机构---时代互联(www.now.net.cn),他们早在2001年微软刚推出Asp.net时就推出了对应的Asp.net虚拟主机了,经笔者的使用测试,他提供的Asp.net性能非常的稳定,版本也会定期的更新,目前他的
变相怪杰 该用户已被删除
9#
发表于 2015-3-23 18:35:40 | 只看该作者
逐步缩小出错代码段的范围,最终确定错误代码的位置。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-11 11:01

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表