【发布时间】:2014-05-27 20:04:16
【问题描述】:
问题:
我正在为脚手架视图自定义 MVC 5 模板。
我需要能够获取正在创建视图的区域的区域名称。
EG,我希望能够为 Url Action 参数的变量 areaName 设置值:
Url.Action("Index", "<#= ViewDataTypeShortName#>s", new { area = "<#= areaName #>", page<#= ViewDataTypeShortName#>s = x }), ViewContext, NormalizePath("~/Areas/<#= areaName #>/Views/<#= ViewDataTypeShortName#>s/"))
在控制器中,我可以这样做:
<#
var areaName = GeneratedTextTransformation.AreaName;
#>
但在 View T4 模板中,这是不可用的。
那么如何获得创建视图的区域的名称?
编辑:
因为 MVC 使用约定优于配置,如果我有办法获取正在创建的视图文件的路径,我可以获取该区域(如:
/Areas/[Area Name]/Views/
所以问题归结为:
问题:
如何获取 T4 ASP.NET MVC 脚手架创建视图的路径?
【问题讨论】:
标签: t4 asp.net-mvc-areas asp.net-mvc-scaffolding