惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

酷 壳 – CoolShell
酷 壳 – CoolShell
H
Hacker News: Front Page
P
Palo Alto Networks Blog
T
ThreatConnect
Apple Machine Learning Research
Apple Machine Learning Research
博客园_首页
T
True Tiger Recordings
P
Privacy & Cybersecurity Law Blog
B
Blog
IT之家
IT之家
Last Week in AI
Last Week in AI
F
Full Disclosure
Hacker News: Ask HN
Hacker News: Ask HN
C
Comments on: Blog
Microsoft Azure Blog
Microsoft Azure Blog
C
Cybersecurity and Infrastructure Security Agency CISA
Microsoft Security Blog
Microsoft Security Blog
博客园 - 【当耐特】
N
News and Events Feed by Topic
NISL@THU
NISL@THU
腾讯CDC
雷峰网
雷峰网
Security Latest
Security Latest
李成银的技术随笔
M
Microsoft Research Blog - Microsoft Research
L
LangChain Blog
L
Lohrmann on Cybersecurity
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
C
Check Point Blog
Y
Y Combinator Blog
Recent Announcements
Recent Announcements
博客园 - Franky
N
News | PayPal Newsroom
V
V2EX
A
About on SuperTechFans
The Register - Security
The Register - Security
月光博客
月光博客
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Google Online Security Blog
Google Online Security Blog
MyScale Blog
MyScale Blog
Cisco Talos Blog
Cisco Talos Blog
Vercel News
Vercel News
WordPress大学
WordPress大学
C
Cyber Attacks, Cyber Crime and Cyber Security
The Hacker News
The Hacker News
IntelliJ IDEA : IntelliJ IDEA – the Leading IDE for Professional Development in Java and Kotlin | The JetBrains Blog
IntelliJ IDEA : IntelliJ IDEA – the Leading IDE for Professional Development in Java and Kotlin | The JetBrains Blog
爱范儿
爱范儿
A
Arctic Wolf
L
LINUX DO - 最新话题
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More

博客园 - Richard Sun

推荐:学习unity3d的好站点 WPF中的MVVM模式 - Richard Sun 谈谈我理解的WPF团队模型——在UI Designer与Developer之间 101个Google技巧——Google技巧的终极收集 - Richard Sun 又一次不太爽的经历 - Richard Sun 王侯将相,宁有种乎 - Richard Sun 唱几句反调 - Richard Sun 为一路通(16tone)开博 - Richard Sun 一路通没有帮到我 白领小秘Vivien的一个上午 - office SharePoint 协同作业- 之图示例1 - Richard Sun NHibernate和Cuyahoga(二)(翻译): NHibernate和Cuyahoga(一)(翻译) - Richard Sun NHibernate和Cuyahoga初体验 Cuyahoga的安装及结构 Team Foundation Server (TFS)中关于连接和用户验证的解决方案 DNS在活动目录中的使用常见问题及解答 学生与女老师的对答 (强) - Richard Sun 十招轻松搞定社会媒体 jQuery插件集合.(240).
NHibernate和Cuyahoga初体验
Richard Sun · 2008-02-19 · via 博客园 - Richard Sun

前言

        接触NHibernateCuyahoga已经很久了,但是一直以来我都没有能够深入的了解Cuyahoga,实在是看不懂啊(水平比较菜),只是了解了NHibernate的一些基本的实体关系和关系数据库之间的映射应用。中间又断断续续的看了一些其他ORM的应用,都各有优缺点(只是在应用级别上),在试用了其他的ORM产品之后,有一种众里寻她千百度,那人确在灯火阑珊处的感觉,特别是我在接触了Coyahoga之后。刚好前天有人发了一片关于Cuyahoga文章,再次激起了我的兴趣,正好这几天比较闲,就学习了一下。

Coyahoga(下面是官方网站上的介绍)

        Cuyahoga是开源的.NETWeb站点框架。他提供了内容管理功能,并且提供了模块化的解决方式。目前她可以很好的在.NET 1.1Mono下以SQLServerPostgreSQLMySQL作为数据存储来运行。本项目的主要目标:向.NET开发者表现以不同于以往的构建Web应用程序的方式构建一个Web站点。虽然本项目主要面向.NET开发者,但是任何感兴趣的人都可以下载Soure并且运行她(当前版本0.9.0)。

安装

        菩提本非树Blog里已经写的很清楚了。

页面框架

        在开始研究源代码之前,必须要对Cuyahoga的页面对象模型要有了解,要不然会云里雾里,就象我第一次接触她一样。

        我们构建一个Web应用的时候,

第一步:创建一个Web站点,我们用WebSite对象来描述;

第二步:一个Web站点,是由多个页面组成的,在这里Node对象来描述,创建Node

第三步:每个页面可以由菜单(Menu),导航栏(同样以Node对象来描述)和正文部分(Section对象来描述) Node里添加Section

如图:Section有三种位置可以放(maincontent gloabmenu side1content)。

 
        Header

                                             Header  

                       Menu部分 Section部分(gloabmenu

Node或者叫

Navigate部分

                            Section部分(maincontent

                           Section部分(maincontent

  Section部分

side1content

                            Section部分(maincontent

  Section部分

side1content

                            Section部分(side1content  

                                                              Footer 

如果还不够直观看这里(http://www.cuyahoga-project.org/10/section.aspx/35)但是这里把Node放在右边。

创建站点

        按照上面的步骤:在管理页面创建一个站点,然后点击右上角的“View The Current Site”,就可以进入你刚才设置的站点(这里要注意NodeSection的权限设置,为了能够通过,暂时全部勾上)。

在您构建的时候,你可能已经发觉了,构建成功后,MenuNode基本就定下来了,而Section则是千变万化,你在一个节点上,可以在三个位置随意添加Section

Note:现在您应该对Cuyahoga有了一个直观的认识,利用Cuyahoga你可以很快的搭建出一个WebSite的框架。

Module理解(模块化) 
        框架搭建出来了,显示内容呢?? Section只是页面框架中正文部分的描述,Section的内容是从哪里来的呢??在Node 中添加Section的时候,General---àModule里你可以选择的Module有如下:

        1)      Articles 发表文章用类似于个人Blog可以回复;

        2)      DownLoads 下载列表;

        3)      Search 搜索引擎 采用Lunece,对这个我还没有了解过;

        4)      StaticHtml等等,发布公告用;

        这些Module之间是没有关系的,在功能上来说是互相独立的,他们各自只和User有关,但他们在框架上又是有联系的,因为他们都继承了框架的基础类。 我们也可以自己开发Module,但要继承Cuyahoga的基础类,二次开发后面介绍。

  Note:我更觉得Cuyahoga像是一个插件式的框架,你可以将开发出来的Module,任意的插在Section中显示出来。

以上是我的粗糙的体会,希望不会挨骂,呵呵。