zoukankan      html  css  js  c++  java
  • CommunityServer 2.1初步学习

    接触communityserver很长时间了,从1.1到2.0、2.1、再到2007,不过都是停留在表面,一直静不下心来研究,现在终于有点精神看源代码了。

    为什么不看2007而是看2.1呢,我个人以为2007比2.1复杂,对新手来说,学习asp.net2.0还是从communityserver2.1开始好

    记得以前每次打开cs项目,一看aspx源码头就晕了,没有cs,全部是controls,一个类继承 一个类,没有熟悉的HTML代码,根本不知道从何处下手。

    网上介绍communityserver的文章确实不少,如cs.cnblogs.com专题,还有仿照cs架构的netfocus项目,都有不少学习资源。

    好了,开始学习吧。

    打开web项目下的default.aspx页面,如上面所说,没有任何html代码,全部是一些控件。从上往下看,先看这行

    <CS:MPContainer runat="server" id="Mpcontainer1" ThemeMasterFile = "HomeMaster.ascx" >

        
    <CS:MPContent id="bcr" runat="server">

     在网上搜索了下,原来mpcontainer就相当于一个容器,打开controls项目下的ContentContainer.cs文件,原来它继承了第三方控件,关于MetaBuilders就不多说了,不属于本文范围。MPContainer类就设置了MasterPageFile的路径,默认为master.ascx,default.aspx页面传入一个参数homemaster.ascx,表示default.aspx的父页面是homemaster.ascx。而在homemaster.ascx也有<CS:MPContent。表示它也有父页面,而MPContainer类里面,默认父页面是为Maste.ascx,找过去一看,终于看到html代码了,首页的总体框架,都在这里定义了。继承Master.ascx页面的HomeMaster.ascs和default.aspx页面填充id相应的MPRegion内容。

    终于对default.aspx的实现机制有点了解了,具体来说就相当于asp.net的母板页,Master.ascx是母版,homeMaster.ascx继承它,填充数据到Master.ascx页面,HomeMaster.ascx和default.aspx也类似俩者的关系

    具体关于MpContainer,MPRegion,MpForm等内容,请查看http://www.netfocus.cn/article1118.html

    附:介绍Community Server的一本书 Professional Community(英文版) (PDF)


  • 相关阅读:
    C# extern关键字的用法
    C#自定义集合类(二)
    C#自定义集合类(一)
    LINQ中交集、并集、差集、去重(十四)
    LINQ中转换操作符(十三)
    Oracle实现连乘和求和
    适配器模式
    HTTP网络协议与手写Web服务容器
    代理模式
    设计模式的几条家规
  • 原文地址:https://www.cnblogs.com/nonsuch/p/1258034.html
Copyright © 2011-2022 走看看