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
相关文档:
asp.net 将Excel导入到Sql2005或2000的思路和步骤:
1、将Excel文件上传到服务器端
这个我不想详细讲了,网上一搜一大把的.
注意:(1在取服务器路径时一定要用this.Page.MapPath(".")而不要用 this.Page.Request.Applic ......
一位CSDN网友放在下载里的
/////////////////
/// <summary>
/// 分页函数
/// </summary>
/// <param name="dtRecord">数据源</param>
private void SplitPage(DataTable dtRecord) ......
一、认识Web.config文件
Web.config文件是一个XML文本文件,它用来储存 ASP.NET Web 应用程序的配置信息(如最常用的设置ASP.NET Web 应用程序的身份验证方式),它可以出现在应用程序的每一个目录中。当你通过VB.NET新建一个Web应用程序后,默认情况下会在根目录自动创建一个默认的
Web.config文件,包括默认的配置设置 ......
用VS开发ASP.NET网站程序的时候,会将类或Web Services放在特殊的文件夹中,凡是放在这些特殊的文件夹中(App_Themes除外)的程序或内容只允许应用程序访问,对于网页的Request则不予响应(无法读取).
文件夹 &nbs ......
在一个
route
中,通过在大括号中放一个占位符来定义
(
{ and } )
。当解析
URL
的时候,符号
"/"
和
"."
被作为一个定义符来解析,而定义符之间的值则匹配到占位
符中。
route
定义中不在大括号中的信息则作为常量值。
下面是一些示例
URL
:
Valid route definitions
Example ......