我想格式化与jqgrid一起使用的日期。如何获取带有模板t4的属性类型以格式化jqgrid中的日期时间?
我正在使用T4的MVC脚手架。
中有这样的
jQuery("#ajaxGrid").jqGrid({
url: '@Url.Action("GridData")',
datatype: "json",
jsonReader: { repeatitems: false, id: "<#= Model.PrimaryKeyName #>" },
colNames: [<#= string.Join(", ", properties.Select(prop => "'" + prop.Name + "'")) #>],
colModel: [
<#= string.Join(", \r\n ", properties.Select(prop =>
string.Format("{{ name: '{0}', editable: true, sortable: true, hidden: {1}, align: {2} {3}}}", prop.Name, prop.Name == Model.PrimaryKeyName ? "true" : "false", "left", prop.Type.ToString() == "DateTime" ? "sorttype: 'date', datefmt: 'm/d/Y h:i AmPm'": "")
)) #>
],
rowNum: 5,
pager: '#ajaxGridPager',
width: '850',
height: '15em'
});
prop.Type.ToString()== “日期时间” 的T4模板的一部分? “sorttype:'date',datefmt:'m/d/Y h:我AmPm'”:“”不起作用。
我想格式化日期如果字段是DateTime,就像我看到的网页/ Date(1315968717587)/并且我想更改T4模板以自动为将来实体生成它。
我该如何做到这一点? 在此先感谢!吉列尔莫。
编辑
我读过,我可以参考Microsoft.VisualBasic程序和使用
Microsoft.VisualBasic.Information.TypeName(prop)
但它返回CodeProperty2。我无法弄清楚如何获得真正的类型。 我试图与
Microsoft.VisualBasic.Information.TypeName(prop).Type
,然后它说: 错误CS1061:编译变换:“字符串”不包含定义为“类型”和没有扩展方法“类型”接受第一AR gument类型的'string'可以找到(你是否缺少使用指令或程序集引用?)
所以它知道它是字符串,但ToString()也返回CodeProperty2。
任何想法? 在此先感谢!吉列尔莫。
不,prop.Type.GetType()输出System .__ ComObject – polonskyg
嗯,你知道这个COM对象实现了什么接口?也许有办法查询它代表什么类型? – FuleSnabel
不知道,无论如何,我可以找到它? – polonskyg