asp.net-mvc – T4MVC @ Url.Action(MVC.Controller.Action())渲染“
发布时间:2020-05-25 02:28:18 所属栏目:asp.Net 来源:互联网
导读:我将一个菜单从部分动作直接转换到布局,使用: @Html.Action(MVC.Menu.Index()) 此操作决定要渲染哪个菜单。例如,一个公共菜单部分。在这些部分中,我也使用T4MVC渲染链接: ul id=navHolderli class=level1 ul class=mainMenu lib@Html.ActionLink(
|
我将一个菜单从部分动作直接转换到布局,使用: @Html.Action(MVC.Menu.Index()) 此操作决定要渲染哪个菜单。例如,一个公共菜单部分。在这些部分中,我也使用T4MVC渲染链接: <ul id="navHolder">
<li class="level1">
<ul class="mainMenu">
<li><b>@Html.ActionLink("Welcome",MVC.Home.Index())</b>
...
由于某些原因,T4MVC提供的Urls最后包括“?Area =”: <ul id="navHolder">
<li class="level1">
<ul class="mainMenu">
<li><b><a href="/home/index?Area=">Welcome</a></b>
...
我的项目中没有任何区域,我已将“IncludeAreasToken”设置设置为false。奇怪的是,只有当我使用“@ Html.Action”渲染部分时,才会发生这种情况 – 如果我将其作为“@ Html.Partial”拉入,则该参数不会被渲染,并且链接是干净和正确的。 (我不想把它作为一个部分,所以请不要提出这个建议;) 之前有任何人会遇到这个吗? 解决方法这里有一些奇怪的事情,我想知道是否有一些MVC错误在根。即使没有使用T4MVC,如果你写:@Html.ActionLink("Welcome","Index","Home",new { Area = "" },null)
在常规视图中,这不会产生虚假的区域=,而在一个Html.Action调用它。我需要问团队的人。 现在,您可以通过在t4mvc.tt中删除此行(围绕第310行)解决方法: <# if (MvcVersion >= 2) { #>result.RouteValueDictionary.Add("Area",area ?? "");<# } #> (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 为什么需要为Html.Action定义的路由?
- asp.net – C#Web API模型绑定提供程序应如何工作?
- asp.net-mvc – 为id而不是name设置HtmlFieldPrefix
- asp.net-mvc-3 – 如何将单选按钮与ASP.Net MVC中的模型数据
- 我是否需要在asp.net中取消订阅(手动订阅)活动?
- asp.net-mvc – 如何使用枚举值填充下拉列表?
- 为什么这么多ASP.NET开发服务器实例?
- asp.net – .axd文件生成404错误
- asp.net-mvc-3 – MVC3 / Razor缩略图/调整大小图像想法?
- 如何强制编译ASP.NET MVC视图?
