易截截图软件、单文件、免安装、纯绿色、仅160KB

ASP.NET MVC 入门5、View与ViewData

本系列文章基于ASP.NET MVC Preview5.
view在MVC模式中与用户进行最直接的接触,它负责数据的呈现。这里要注意一点就是,view只是负责数据的呈现,所以我们应该要尽量让
view中不涉及业务逻辑的处理。
我们来添加一个Blog首页的view。在安装了ASP.NET MVC后,我们在添加新项目的时候可以看到有MVC的view模板:
 
注:如果你的是中文版
的VS,安装完后可能会出现找不到这个模板的现象,你可以参考
在中文版VS 08中安装MVC
这篇
文章设置一下。
其中MVC View Content Page是有母版页的。我们在Views/Home目录下添加一个MVC View Content
Page,并选择我们Views/Shared目录下的Site.Master母版页:
public
 
partial
 
class
Index : ViewPage
{
}
ASP.NET
MVC默认是使用WebForm来作为view的。所以我们看到新建的aspx页面继承自ViewPage,如果使用aspx页面作为ASP.NET
MVC的视图引擎,则所有的aspx页面都必须继承自ViewPage。我们再看一下ViewPage:

我们看到ViewPage继承自ASP.NET
WebForm的Page页,还实现了IViewDataContainer接口,同时还提供了一些Helper类的实例。我们可以使用ViewData
来从Controller中往view页面中传递数据。下面我们在HomeController中的Index
Action中取出Posts列表,然后在View中显示。我们先在Controller中取出数据,前面说过,为了方便,我们会直接使用
BlogEngine的Model层来作为我们这个4mvcBlog的Model。所以我们的代码如下:
public
ActionResult Index(
int
?
id)
{
    ViewData[
"
Title
"
]
=
BlogSettings.Instance.Name;
    List
<
IPublishable
>
posts
=
BlogEngine.Core.Post.Posts
       
.ConvertAll(
new
Converter
<
Post,
IPublishable
>
(
delegate
(Post p) {
return
p
as
IPublishable; }));
   
int
pageIndex
=
(id
!=
 
null
 
&&
id.HasValue
&&

id.Value
>
 
0
)
?
id.Value :
1
;
   
int
pageSize
=
Math.Min(posts.Count, BlogSettings.Instance.PostsPerPage);
   
if
((pageIndex
-
 
1
)
*
pageSize
+
pageSize
>
posts


相关文档:

The default ASP.NET Trust level

 啟動:Microsoft   .NET   Framework   2.0   Configuration-->Runtion   Security   Policy-->右鍵-->Adjust   Security-->Make   changes   to     this &nbs ......

asp.net 将Excel导入到Sql2005或2000

asp.net 将Excel导入到Sql2005或2000的思路和步骤:
1、将Excel文件上传到服务器端
        这个我不想详细讲了,网上一搜一大把的.
        注意:(1在取服务器路径时一定要用this.Page.MapPath(".")而不要用  this.Page.Request.Applic ......

asp.net 身份验证(分目录验证篇)

在上一篇博文《asp.net中的身份验证(最简单篇)》中的身份验证虽然很简单,但是有一个缺点,就是访问整个网站都必须要经过身份验证,而事实上,很多网站都不会这么要求的。
比如一个新闻系统,通常只有在发布新闻的网页才需要身份验证,而用户浏览新闻是不需要身份验证的。对于这种情况,就要针对不同的网页来进行身份验 ......

ASP.NET面试题(一)

SP.NET面试题
(转 原文地址http://blog.sina.com.cn/s/blog_524c848901009e7b.html~type=v5_one&label=rela_nextarticle 作者
李洋的博客
http://blog.sina.com.cn/liiyang)
1. 简述 private、 protected、 public、 internal 修饰符的访问权限。
答 . private : 私有成员, 在类的内部才可以访问。
prote ......

ASP.NET面试题(二)

(转 原文地址http://blog.sina.com.cn/s/blog_524c848901009e7b.html~type=v5_one&label=rela_nextarticle 作者
李洋的博客
http://blog.sina.com.cn/liiyang)
66.软件开发过程一般有几个阶段?每个阶段的作用?
答:需求分析,架构设计,代码编写,QA,部署
67.在c#中using和new这两个关键字有什么意义, ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号