首页 新闻 会员 周边

怎么在ASP.NET MVC基架的列表模板中获取到当前数据模型类型

0
悬赏园豆:50 [已解决问题] 解决于 2015-03-09 16:43

如题,怎么在ASP.NET MVC基架的列表模板中获取到当前数据模型类型。能够获取到类型全名也可以。

http://stackoverflow.com/questions/28063731/how-to-get-model-type-in-microsoft-aspnet-scaffolding-list-cs-t4

雪雁的主页 雪雁 | 初学一级 | 园豆:50
提问于:2015-01-21 18:05
< >
分享
最佳答案
0
<#@ parameter type="System.String" name="ViewDataTypeName" #>
<#@ parameter type="System.String" name="ViewDataTypeShortName" #>
<#@ parameter type="System.Boolean" name="IsPartialView" #>
<#@ parameter type="System.Boolean" name="IsLayoutPageSelected" #>
<#@ parameter type="System.Boolean" name="ReferenceScriptLibraries" #>
<#@ parameter type="System.Boolean" name="IsBundleConfigPresent" #>
<#@ parameter type="System.String" name="ViewName" #>
<#@ parameter type="System.String" name="LayoutPageFile" #>
<#@ parameter type="System.String" name="JQueryVersion" #>
<#@ parameter type="Microsoft.AspNet.Scaffolding.Core.Metadata.ModelMetadata" name="ModelMetadata" #>

根据模板中提供的参数,冒似还真没法获取类型全名,只提供了类型名。。。

收获园豆:50
netqiang | 菜鸟二级 |园豆:405 | 2015-03-09 16:40

对的,这个是无解的,我已经放弃了这种模式。

雪雁 | 园豆:50 (初学一级) | 2015-03-09 16:43
其他回答(2)
-1

用propertyinfo能解决么?

hushpeak | 园豆:170 (初学一级) | 2015-01-24 16:53

不行,翻遍了貌似是无解。准备放弃这种方式了。

支持(0) 反对(0) 雪雁 | 园豆:50 (初学一级) | 2015-01-24 23:05
0

@Model.GetType();  得到 System.Collections.Generic.List`1[XXX.Manager.Services.Base.ProductInfo];

@Model[0].GetType();  得到XXX.Services.Base.ProductInfo;

不知道是不是你想要的

kezhiping | 园豆:197 (初学一级) | 2015-02-05 12:37

你理解错了。我是需要在T4模板中用T4语法中获取到实体类型,以便于代码生成,而不是在View里面。从目前来看,应该是不可行的。

支持(0) 反对(0) 雪雁 | 园豆:50 (初学一级) | 2015-02-06 09:44
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册