创建虚拟属性
与普通属性不同之处在于虚拟属性没有对应的数据库字段。虚拟属性的值是通过动态计算得出的。由于虚拟属性的值没有保存在数据库中,虚拟属性只能用于数据显示的用途,而不能像其它属性那样用于查询、修改、和排序等操作。
虚拟属性常用于在同一数据实例现有属性值的基础上计算出新的值。例如,“事务”数据类的“已提交天数”属性就可以使用虚拟属性实现。“已提交天数”表示该事务从提交日期起到今天的天数。所以该虚拟属性的值是当前日期减去“提交日期”的所得出的天数。
创建“已提交天数”属性
创建”已提交天数”的步骤如下:
- 鼠标右键选择DesignStudio左边的“事务”数据类→在弹出条目拦单击“创建…”;
- 弹出“添加新客体”输入框,选中“虚拟属性”,输入名称:ElapsedDays;显示名:已提交天数。如下图所示:
单击“确认”按钮,并对其作如下参数设置:
- “数据类型”选择为:“String”
- 设置虚拟属性的“程序”的方法为在参数设置中点击“程序”栏右边的“…”按钮,如下图所示:
在弹出的“虚拟属性程序窗口”,复制粘贴下面的代码(C#)到Eval方法中,如下图红框所示:
DateTime today = DateTime.Now; // 今天的日期
DateTime submitDate = instance.GetDateTime("SubmitDate"); // 获取提交日期
return (today - submitDate).Days.ToString();
注意: 不要修改Eval方法以代码的部分。
编译代码确认代码无误后,单击“确定”按钮,见下图:
属性的其它设置采用默认值。
“已提交天数”的虚拟属性创建完毕。
请点击左下方的链接回到上一个教程,点击右下方的链接进入下一个教程。如果要暂停学习下一个教程,请注意保存数据模型到数据库。