asp.net-mvc – T4MVC:如何使用说Url.Action?
我们可以编写T4MVC文档提示
@Url.Action(MVC.Dinners.Delete(Model.DinnerID)) 代表老式和字符串硬编码 @Url.Action("Delete","Dinners",...)) (见附图) 也许我真的错过了一些东西,但第一个版本实际上会调用控制器的动作方法,显然不是目标有副作用.我已经使用resharper静态跟踪方法调用,并且还调试了:实际上调用了该方法,其中(再次)不是目标. Url.Action确实具有接受ActionResult的重载,这就是为什么T4MVC版本不会导致编译错误的原因.如果可以在没有副作用的情况下调用操作方法,则正确呈现的URL也是如此. 我的目标是在视图中渲染动作URL,换句话说,我真的在寻找@ Url.Action(“删除”,“晚餐”,……)的替代方案. 这是我发现的: @Url.Action(MVC.Dinner.ActionNames.Delete,MVC.Dinner.Name) 我错过了什么? (为什么我们会调用实际的动作方法,只是为了渲染它的url?) 解决方法
那是致命的.我在问题中所描述的一切都是真的,仍然是虚假警报.
我的action方法的返回值是string.请不要问为什么,它是完全合法的,逻辑上该方法是无效的(从javascript调用POST,并忽略响应) 该字符串返回值欺骗了T4MVC生成器,因此该方法实际上是由@ Url.Action调用的(MVC.Dinners.Delete(Model.DinnerID)) 将方法的返回值更改为ActionResult(并且不执行任何其他操作)后,T4MVC生成的代码将更改,并且不再调用操作方法 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – __doPostBack无法在回发时呈现
- asp.net-mvc – 在MVC5中呈现Razor的部分视图
- asp.net-mvc-4 – MVC4和MVCContrib
- asp.net – 使PDF显示内联而不是单独的Acrobat Reader窗口
- asp.net – 在IIS上部署MVC应用程序时,我收到一个空白页面
- asp.net-mvc – 如何将自定义css文件添加到asp.net mvc?
- asp.net-mvc – 发布到生产服务器时的.NET MVC错误500
- asp.net-mvc – 您对Telerik Extensions for MVC有何看法?
- 从Asp:Menu运行每个MenuItem的javascript函数
- asp.net-mvc – MVC捆绑:错误403
- asp.net-mvc – Chrome 27中SignalR和跨域请求的
- asp.net-mvc – ASP.NET MVC自动解码来自AJAX的J
- asp.net-mvc – 具有html帮助的布尔隐藏和隐藏
- asp.net-mvc – URL中的Internet Explorer西里尔
- asp.net-core – 如何轻松地从ASP.NET Core 2.1迁
- [译]ASP.NET Core 2.0 网址重定向的方法
- 使用CQRS的ASP.NET MVC应用程序的良好读取模型是
- asp.net中的多线程
- asp.net-mvc – Web API – 默认呈现Razor视图?
- asp.net-mvc – 更改asp.net MVC中的默认模型绑定