人无信不立/2008-04-26 22:30
永春阁
专注于技术,切不可沉湎于技术
博客园
社区
首页
新随笔
联系
管理
订阅
随笔- 226 文章- 20 评论- 1289
MonoRail学习笔记十二:layout布局的使用
在Asp.net中提供了MasterPage母版页的机制,可以实行整体风格的控制
在MonoRail中同样提供了这种机制,可以方便的处理布局和一些整体风格。
使用方式很简单,主要就是Layout属性:
LayoutController.cs
1
[Layout(
"
/master
"
)]
2
public
class
LayoutController : Controller
3
{
4
public
void
Index()
5
{
6
//
LayoutName = "/master2";
7
8
}
9
}
表示这个Controller里面所有的vm都是使用/master的布局设置。其中第六行注释放开之后可以动态更换一个布局
/views/master.vm
<
html
>
<
body
>
$!head
<
br
/>
Welcome!
<
p
>
$childContent
</
p
>
$!footer
</
body
>
</
html
>
指定了三个区域,就相当于三个Asp.net中的内容一样,其中$childContent是固定名称的
/views/layout/index.vm
#capturefor(head)
11111
#end
Inner Content
#capturefor(footer)
22222
#end
最后显示的结果就是两个vm结合后的页面显示
如果熟悉Asp.net中的母版页的话应该很好理解的
posted @ 2007-11-01 11:23
永春
阅读(788)
评论(15)
编辑
收藏
所属分类:
MonoRail
发表评论
回复
引用
查看
#1楼
2007-11-01 12:25 |
kiler
问个问题,为什么$!head和$!footer有感叹号
$childContent没有?
回复
引用
查看
#2楼
[
楼主
]2007-11-01 13:31 |
GSpring
@kiler
$childContent相当于MonoRail中定义的全局变量,是关键字
$!head和$!footer是自己定义的,名称可以自己起
我这边是按照常用的方式来写的
当然你可以都加 "!" 或者都不加 "!" 都是可以的
回复
引用
#3楼
2007-11-01 22:53 |
陆俊杰2 [未注册用户]
我会遇到这种错误~,知道告诉我下~谢谢
Encountered "#end" at line 3, column 1.
Was expecting one of:
<EOF>
"(" ...
<RPAREN> ...
<ESCAPE_DIRECTIVE> ...
<SET_DIRECTIVE> ...
"\\\\" ...
"\\" ...
<TEXT> ...
<SINGLE_LINE_COMMENT> ...
"*#" ...
"*#" ...
<STRING_LITERAL> ...
"if" ...
"stop" ...
<NUMBER_LITERAL> ...
<WORD> ...
<IDENTIFIER> ...
<DOT> ...
"{" ...
"}" ...
回复
引用
查看
#4楼
[
楼主
]2007-11-02 09:00 |
GSpring
@陆俊杰2
没碰到,最好能把你的代码贴一下
好像是#end 使用的有问题
回复
引用
#5楼
2007-11-02 12:39 |
陆俊杰2 [未注册用户]
view:
#CaptureFor(head)
aa
#end
master:
<html>
<body>
$!head <br/>
Welcome!
<p>$childContent</p>
$!footer
</body>
</html>
回复
引用
查看
#6楼
[
楼主
]2007-11-02 13:53 |
GSpring
@陆俊杰2
应该是capturefor 小写
回复
引用
#7楼
2007-11-02 14:24 |
陆俊杰2 [未注册用户]
受教了~
回复
引用
查看
#8楼
2007-11-05 16:54 |
老刘.
问下 GSpring ,
layout 仿佛没有 后台对应的 .cs文件,
如果想在 layout 中做服务器端处理,比如用户登录,或者在线用户显示之类的,应该怎么做呢?
还请兄台赐教:)
回复
引用
查看
#9楼
[
楼主
]2007-11-05 17:52 |
GSpring
@老刘.
这还真是个问题,
目前我想到的是可以利用AJaxHelper来实现
在master中调用:
$AjaxHelper.GetJavascriptFunctions()
<div id="user">
</div>
<script language=javascript>
new Ajax.Updater('user', '/myajax/User.rails', {});
</script>
具体使用可以参看我的:MonoRail学习笔记十六:AJax在MonoRail中的使用
回复
引用
查看
#10楼
2007-11-06 17:25 |
老刘.
@GSpring
: )
试验了下,关于提交,直接提交到xx controller 的 xx action就ok了,关于更新里边的html标记,现行解决方案还是javascript。
回复
引用
#11楼
2007-12-20 11:47 |
p [未注册用户]
老刘说的是个问题,我现在也困在这里,layout里怎么做登陆呢
回复
引用
查看
#12楼
[
楼主
]2007-12-20 12:28 |
GSpring
@p
目前我想到的是可以利用AJaxHelper来实现
回复
引用
查看
#13楼
2008-05-30 10:55 |
bluesky521
我使用了layout母版页机制感觉不错,不过有一个问题:
在asp.net中,使用母版页的页面可以设置自己的title(网页标题),layout如何实现这样的功能呢?
我使用了layout,这样每个页面的标题都与母版页的标题一样,对于搜索引擎的索引这样不太友好呀!如何实现自定义的title呢?请赐教,先谢了.
回复
引用
查看
#14楼
2008-07-03 16:52 |
beyond923
PropertyBag["title"]
Controller 里面赋值
新用户注册
刷新评论列表
标题
姓名
主页
Email
(博主才能看到)
验证码
*
看不清,换一张
[
登录
][
注册
]
内容(请不要发表任何与政治相关的内容)
网站首页
新闻频道
社区
小组
博问
网摘
闪存
找找看
Remember Me?
登录
使用高级评论
新用户注册
返回页首
恢复上次提交
[使用Ctrl+Enter键可以直接提交]
相关文章:
Json.NET - LINQ to JSON
使用Visual Studio2005入门.Net2.0系列视频教程
MonoRail学习笔记系列文章
Spring.net是否已经提供对MonoRail集成?
跟大家了解一下.net在公司中的应用情况
The Future of MonoRail in the Wake of MS MVC
MonoRail+AspView开发我的小站
相关链接:
历史上的今天:
2006-11-01
ajax中ValidatorCalloutExtender控件使用出现问题
所属分类的其他文章:
MonoRail学习笔记二十:资源文件的使用和多语言支持
MonoRail学习笔记十九:可重复使用组件ViewComponents的使用
MonoRail学习笔记十八:在VM中可以使用哪些系统变量
MonoRail学习笔记十七:TransformFilter的使用
MonoRail学习笔记十六:AJax在MonoRail中的使用
MonoRail学习笔记十五:文件上传
MonoRail学习笔记十四:分页功能的使用
MonoRail学习笔记十三:NVelocity的增强功能
使用NVelocity[翻译]
Velocity 《VTL语法参考指南》中文版[转]
最新IT新闻:
全屏触摸力反馈 黑莓Storm发布
微软推出Touchless:无需触屏的触屏技术
AMD剥离芯片制造业务 获60亿美元投资
Google向Wine贡献更多代码
苹果创始人Steve Wozniak称iPod将被淘汰
公告
本Blog版权均为本人所有,欢迎任何媒体和网站转载本人博客的内容。
本Blog的内容按原样提供,本人不提供任何形式的担保。
转载请注明出处
我的MVP配置
自2007年3月8日:
系列文章
1、
Sharepoint2007对象模型系列
2、
C#强化系列文章
3、
MOSS SDK学习系列
4、
IBatis.Net学习笔记系列
5、
MonoRail学习笔记系列
<
2007年11月
>
日
一
二
三
四
五
六
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
与我联系
发短消息
搜索
常用链接
我的随笔
我的空间
我的短信
我的评论
更多链接
我的参与
我的新闻
最新评论
我的标签
留言簿
给我留言
查看留言
我参加的小组
Debug 探索团队小组
写书译书小组
博客园精华集出版小组
iBATIS.NET
MonoRail
我参与的团队
SharePoint团队(0/744)
Ajax&Atlas技术团队(0/1138)
南京.net俱乐部(0/429)
ASP.NET AJAX (Atlas)学习(0/1353)
MVP(微软最有价值专家)团队(0/637)
Debug 探索团队(0/53)
博客园精华集出版(0/45)
随笔分类
.Net(49)
(rss)
AJax(3)
(rss)
C++/VC学习(2)
(rss)
iBATIS.NET(15)
(rss)
Java(6)
(rss)
MonoRail(25)
(rss)
OS Shell(5)
(rss)
SharePoint(42)
(rss)
Windows Server(1)
(rss)
XHTML/CSS/Script(6)
(rss)
企业开发(2)
(rss)
数据库(21)
(rss)
外语(1)
(rss)
项目管理(7)
(rss)
娱乐/杂记/修养(49)
(rss)
随笔档案
2008年9月 (1)
2008年8月 (3)
2008年7月 (7)
2008年6月 (1)
2008年5月 (2)
2008年4月 (12)
2008年3月 (14)
2008年2月 (3)
2008年1月 (14)
2007年12月 (17)
2007年11月 (21)
2007年10月 (31)
2007年9月 (13)
2007年8月 (25)
2007年7月 (10)
2007年6月 (1)
2007年5月 (2)
2007年4月 (10)
2007年3月 (15)
2007年2月 (7)
2007年1月 (1)
2006年12月 (3)
2006年11月 (21)
2006年10月 (5)
2006年8月 (2)
SharePoint学习
Codeplex Sharepoint
jianyi @ cnblogs
Kaneboy's Blog
Patrick Tisseghem's Blog
管理相关
下载_中计在线
中国管理之家
开源社区
C#开源资源大全
Java开源大全
SourceForge主页
门户网站
南京程序员俱乐部
积分与排名
积分 - 300881
排名 - 98
最新评论
1. re: 在MOSS中开发和部署Infopath
还有工具>提交选项是怎么设置的.谢谢~~~ (ゞWXXoοО)
2. re: 在MOSS中开发和部署Infopath
@ゞWXXoοО 我没有建立数据源的,你还是没有按照步骤来呀-_- 连接数据库我是直接用代码连接的: using (SqlConnection connection = new SqlConnect... (永春)
3. re: 在MOSS中开发和部署Infopath
以空白模板建表单后.你的工具>数据连接 工具>表单选项是怎么设置的?能不能补充到你这篇文章中. (ゞWXXoοО)
4. re: 在MOSS中开发和部署Infopath
选了,都设置了.不过在数据连接时费了不少时间.在工具>数据连接里可以添加一个外部数据源(搜索moss上的连接,我在moss站点里建了一年数据连接库,不知道你是不是这样作的.),可是想启用"提交选项"时... (ゞWXXoοО)
5. re: 在MOSS中开发和部署Infopath
@ゞWXXoοО
我是用空白模板建的,你有没有选浏览器兼容?签名? (永春)
阅读排行榜
1. 这样的面试题你会吗?(4769)
2. 易经杂说—南怀瑾(4398)
3. Asp.Net Forms验证(自定义、角色提供程序、单点登录)(4198)
4. 年终个人总结:我这五年(4016)
5. 为什么要使用MonoRail?(3931)