29
2015
06

向上网管理软件视图传递数据(3)

这种方法解决了松散类型存在的以下问题:

访问传递给视图的对象的属性和方法时,不再需要进行其他转换。

可以在编译时检查应用程序的正确性。

25
2015
06

向上网管理软件视图传递数据(2)

然后,在上网管理软件视图中,从ViewData对象检索对象。但这种方法存在一个小问题:字典中所有对象都存储为object类型,所以在使用这些对象之前需要将它们转换为正确的类型:

<%=((User)ViewData[“LoggedUser”]).HomeAddress.City %>

23
2015
06

向上网管理软件视图传递数据(1)

动作的最终目标是收集数据并将上网管理软件数据返回给用户。大多数情况下,这是通过(用于接收由动作检索到的数据的)视图完成的。可以通过三种不同的方法完成该工作:

第一种也可能是更好的一种向上网管理软件视图传递数据的方法是使用ViewData对象,ViewData对象就是一个简单的存储“名-值”对集合的字典。可以在其中存储任何类型的值,包括从简单的消息字符串到复杂的层次模型对象的任何类型。

17
2015
06

定义电脑行为监控软件的动作(4)

[AcceptVerbs(“POST”)]

Public ActionResult Update(FormCollection form)

15
2015
06

定义电脑行为监控软件的动作(3)

要完成这项工作,有以下三种选择:

编写两个独立的电脑行为监控软件动作的方法,一个命名为WriteForm,另一个命名为ProcessForm。这不是一种好的解决方案,因为这种方法为同一个功能提供了两个名称,并将内部细节向用户公开。

10
2015
06

定义电脑行为监控软件的动作(2)

电脑行为监控软件动作的默认名称是实现该动作的方法的名称,但是可以通过使用ActionName特性标记为方法来改变动作的名称。

为什么会希望改变动作名呢?如果希望将一个动作命名为View,就不能简单地创建一个名为View的方法,因为控制器基类中已经有一个名为View的方法(该方法向浏览器呈现视图)。通过使用该特性,可以创建具有任何名称的方法,并将动作命名为View。

08
2015
06

定义电脑行为监控软件的动作(1)

之前我们了解到,只需要在创建的电脑行为监控软件控制器类中添加一个公共方法就可以创建一个动作,并且动作的名称就是方法的名称。在大多数情况下这是正确的,但是也可以通过一些特性修改默认行为。

有三个内置特性可以控制在上网管理软件控制器类中定义动作的方式:

03
2015
06

上网管理软件控制器的职责(4)

3.进入Views/Home文件夹,打开上网管理软件About.aspx文件,在页面主体中的某个地方添加如下代码:

<h1><%= Html.Encode(ViewData[“ID”]) %></h1>

01
2015
06

上网管理软件控制器的职责(3)

除了上述几条规则之外,可以根据您喜欢的任何方式自由组织上网管理软件控制器类和动作方法。

在开始编写代码示例之前需要提醒您的是:在之前创建ASP.NET MVC Web站点时,已经介绍过默认的路由规则是{controller}/{action}/{id},按照这个规则,ASP.NET MVC框架使用被指定为URL一部分的动作和上网管理软件控制器处理请求。

«1»