VTL-vm模板的变量用法
加载foot模块页
#parse("foot.vm")
#foreach($item in $tables)
#end
$strEnd也可以看做一个字符串来操作
$item.Substring(0,15) 取出从0开始的15个字符
------------------------------------------------------------------------------------------
//$listType才能用ToString()时,不能用$!{listType}不会出错不能被ToString();
//$listType.toString('f2'),四舍五入,保留两小数。toString();可以加很多的参数,查查参数表.
#if($listType.ToString() == "List")
#elseif($listType.ToString() == "Select")
#end
//#foreach()的循环用法。
<select id="sels">
</select>
---------------------------------------------------------------------------------------
2008-1-5:作VTL表达式,Castle工程
VTL表达式不区分大小写,可以调用方法,属性,
//$velocityCount是统计循环的次数,从1弄开始计算
#set($foo="Holle") ${foo}world
##:是单行注释。#**#:多行注释。
<table>
#foreach($info in $array)
#end
</table>
循环Hashtable是的用法
$allProducts是Hashtable的对象
#foreach($var in $allProducts)
#end
//另一种Hashtable的循环用法
vm页面用关键字点键名。
<h3>$!{hash.aa}</h3>
<h3>$!{hash.bb}</h3>
<h3>$!{hash.cc}</h3>
<h3>$!{hash.dd}</h3>
Controll层里
public void Index()
{
}
-------------------------------------------------------------------------------------
##是可以用来输出字面的意思是原样输出(注释用的)
#literal()
#foreach($woogie in $boogie)
#end
#end
-----------------------------------------------------------------------------------------
//$type里面的一些方法,比较有用。
#if($type.ToLower() != "noservice")
ToString():
#set($index=$item.Content.IndexOf(","))
$!{item.ReceiveTime.ToString("yyyy-mm-dd HH:mm")}
$!{consumeLog.OperateDate.ToString("yyyy-MM-dd HH:mm")}
$!{consume.ConsumeDate.ToString("d")}
$!{consume.ConsumeDate.ToString("t")}
$!{sign.FirstStartTime.ToShortDateString()}与$!{sign.FirstStartTime.ToString("yyyy-MM-dd")}效果一样的。
#set($index = $customer.IndexOf(","))取得逗号位置
$r.Phone.Substring(0,7)****:取出电话号码为:1371093****
-----------------------------------------------------------------------------------------
this.ProprtBag.Add("time",DateTime.Now);
//用来判断是否为空
#if($time!="")
#end
//当有数组是判断是否是数
#if($items.Count>0)
#end
-----------------------------------------------------------------------------------------
#elseif:多重条件判断
#if(!$order)
#elseif($order.CustomerId && $order.CustomerId != "" && $order.CustomerId != $userName)
#elseif($order && ($order.CustomerId == "" || !$order.CustomerId || $order.CustomerId == $userName))
#end
-----------------------------------------------------------------------------------------------------
用<!--
---------------------------------------------------------------------------------------------------------
//会依次显示,当翻页面时也会接着上一页继续显示编号。其中14为每一页显示的条数,根据需要而调整
#if(!$page || $page <= 0)
#end
#set($rowIndex = ($page - 1) * 14 )
#foreach($log in $logDt.Rows)
#end
---------------------------------------------------------------------------------------------------------
$!{consumeLog.OperateDate.ToString("yyyy-MM-dd HH:mm")}
---------------------------------------------------------------------------------------------------------
#if(!$log.UserName || $log.UserName == "")
#else
#end
用来判断为空值时的处理
-----------------------------------------------------------------------------------------------------------
DataTable或者DataSet的页面数据加载。
---------------------*.vm----------------------------------------------------------------------------------
页面上写的是
#foreach($log in $table.Rows)
#end
----------------controller----------------------------------
public void Index()
{
}
----------------------------DateSet数据绑定页面------------------------------------
#foreach($t in $ds.Tables)
#end
---------------------后台的代码----------------------------------------------------
using(DataSet ds=_cardsSituation.ByCardType(CurrentMerchant.UserName,year,month))
{
}
-------------------------------------------------------------------------------------
//时间日期的判断
#if($!{Member.Isusedate.ToShortDateString()} =="0001-1-1")
#else
#end
-------------------------------------------------------------------------------------
//用于计算剩余的值
#set($Balance = $!item.Money - $!item.FactMoney)
<td
-------------------------------------------------------------------------------------
//用来显示DataTable dt类型数据的方法。
#foreach($col in $dt.Columns)
#end
<tr>
#foreach($dr in $dt.Rows)
#end
--------------------------------------------------------------------------------------
---------------------*.vm------------------------------------
页面上写的是
#foreach($log in $table.Rows)
#end
----------------controller----------------------------------
public void Index()
{
}
----------------------------DateSet数据绑定页面-----------------------------------------------------
#foreach($t in $ds.Tables)
---------------------后台的代码
using(DataSet ds=_cardsSituation.ByCardType(CurrentMerchant.UserName,year,month))
{
}