Dorado 5 : 15.使用命令控件与后台交互 (T1)


Dataset数据集对象在浏览器端可以进行各种操作。如,对数据的增删改,都可以在浏览器中批量操作。不过我们刷新页面之后就会发现,所有的操作都会恢复,之前的所做步骤全部失效。原来,dorado在客户端所有的对数据的操作都是缓存方式存在,除非我们把它提交到后台数据库中进行持久化。每次刷新都是从后台数据库中重新读取表中的数据加载至Dataset数据集对象,而在浏览器中修改的临时处理全部被丢弃而重新加载了。从dorado的原理图中我们可以看到所有的展现都是从后台往前台单向加载的,而所有的数据都是双向交互,可以加载并提交的。
本章主要通过一个综合例子讲解如何通过dorado中的命令控件与后台进行交互。其中会涉及到页面跳转等操作。

AJAX远程访问后台

1.AJAX远程访问后台 (T1)

使用请求命令跳转页面

2.使用请求命令跳转页面 (T1)

处理提交的Dataset对象

3.处理提交的Dataset对象 (T1)

将Dataset导出至Excel

4.将Dataset导出至Excel (T1)

小测试

1.关于RPCCommand命令控件,下面说法正确的是()【多选】

A) RPCCommand可以在ViewModel中新建多个。
B) RPCCommand可以提交Dataset数据集对象至服务器端处理。
C) RPCCommand无法提交Dataset数据集对象至服务器端处理。
D) RPCCommand可以通过method属性指定调用需要处理的方法。

2.关于UpdateCommand命令控件,下面说法错误的是()【单选】
A) UpdateCommand可以提交多个Dataset数据集对象至服务器端处理。
B) 一个ViewModel中只能有一个UpdateCommand控件用于提交Dataset。
C) UpdateCommand是通过创建多个DatasetInfo对象绑定Dataset实现一次执行多个数据集对象的提交。
D) UpdateCommand控件可以创建多个,并通过方法分派实现不同的执行调用不同的处理方法。

3.关于Parameters和outParameters,下面说法正确的是()【多选】
A) 所有的Command命令控件都拥有Parameters和outParameters对象。
B) Parameters和outParameters总是成对出现,使用时缺一不可。
C) Parameters对象可以在客户端创建赋值并被提交至服务器端取出处理。
D) outParameters对象可以在服务器端赋值并被返回至客户端中取出处理。

4. 关于RequestCommand请求命令,下面说法正确的是()【多选】
A) RequestCommand可以提交Dataset数据集对象至服务器端处理。
B) RequestCommand主要用于请求一个新的页面。
C) 默认情况下,RequestCommand请求一个新的页面是使用get方法。
D) 默认情况下,RequestCommand请求一个新的页面是使用post方法。

5. 关于RequestCommand中的parameterFields属性,下面说法错误的是()【单选】
A) RequestCommand中的parameterFields属性可设可不设,并不要求。
B) 如果需要设置parameterFields时,必须同时设置RequestCommand的dataset属性。
C) parameterFields属性可以设置多个,采用分号";"分隔。
D) 如果设置了parameterFields和dataset属性,则执行RequestCommand命令请求一个新的页面时,同时会传递以指定parameterFields属性设置的值为参数名name,而参数值则来自dataset属性中指定的Dataset数据集中的同名列的当前记录值,传递至被请求的新页面中。

6.submitScope属性中的取值主要有()【多选】
A) seleted
B) all、current
C) all-change、all-server
D) all-change、all-visible

7.将数据集导出至Excel中,下面说法正确的是()【多选】
A) 只有AutoSqlDataset中的数据才能被导出至Excel中。
B) 导出至Excel中的数据对于数据集对象的类型并不要求。
C) 配置dataMode属性可以选择多种不同的数据模式导出。
D) 导出至Excel文件中的方式只能采用下载的方式单独打开一个Excel文件查看数据。

小结

本章主要讲解如何使用命令控件与后台进行交互。首先通过登录验证的示例讲解了如何使用RPCCommand在客户端发起AJAX请求传递参数至服务器端处理,结束后再将处理后的参数返回并弹出提示,并同时介绍了Parameters和outParameters的原理概念和使用方法。在RequestCommand的章节,通过设置绑定Dataset数据集并设置parametersFields和method属性,实现了提交跳转页面时将指定的参数值通过get或post方式传递。登录验证通过后,点击按钮触发页面跳转请求,在被跳转的页面中,接受传递的参数值并用来作为查询条件值匹配执行数据集的查询操作。在介绍UpdateCommand更新命令的章节,通过执行新增、删除、修改数据并提交处理的方式,在ViewModel的实现类中编写接受处理的测试代码,验证设置不同的scope值时的处理情况。并介绍了select字段的使用方法。
最后介绍了如何将Dataset中的数据导出至Excel中,并解释了不同的导出数据范围模式和导出模式的用法。
另外,QueryCommand查询命令控件在<HelloWorld4 查询>已经做了讲解说明,此处不再赘言。