Jas*_*orn 47 asp.net-mvc routing
在ASP.NET MVC中,Img标签的Html.ActionLink助手是否相同?
我有一个控制器动作,输出动态生成的JPEG,我想使用相同的Lambda表达式链接到它,因为我使用ActionLink做HREF.
或者,只提供路由URL(再次使用Lambdas指定)的帮助程序也是可以接受的.
编辑:我最初指定我使用预览5,但我发现Beta已经发布.因此,所有版本号都是不必要的信息,因为我可能很快升级:-)
Rob*_*ean 47
您可以使用URL.Action方法
<a href="<%= Url.Action("Create") %>"><img src="../../Content/Images/add_48.png" /></a>
Run Code Online (Sandbox Code Playgroud)
rea*_*idt 39
这个问题比较老了,我刚刚开始使用ASP.NET MVC,当RC已经出来时,但对于那些像我这样后来发现这个问题的人来说,这可能很有趣:
至少在RC中你可以使用Url.Action()和匿名类型,结果看起来比上面的建议好很多,我想:
<a href="<%= Url.RouteUrl("MyRoute", new { param1 = "bla", param2 = 5 }) %>">
put in <span>whatever</span> you want, also <img src="a.gif" alt="images" />.
</a>
Run Code Online (Sandbox Code Playgroud)
当然,RouteUrl还有许多其他重载.
ste*_*son 20
Url.Action()将为您提供大多数Html.ActionLink重载的URL,但我认为URL-from-lambda功能目前只能通过Html.ActionLink获得.希望他们在某些时候会为Url.Action添加类似的重载.
我使用了一种解决方法为ActionLink放置标记而不是文本,然后将其替换为我的图像代码.像这样的东西:
<%= Html.ActionLink("__IMAGE_PLACEHOLDER__", "Products").Replace("__IMAGE_PLACEHOLDER__", "<img src=\"" + myImgUrl + "\" />")%>
Run Code Online (Sandbox Code Playgroud)
不是最优雅的解决方案,但它有效.
在MVC3中,您的链接如下所示:
<a href="@Url.Action("Create")"><img src="../../Content/Images/add_48.png" /></a>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
44996 次 |
| 最近记录: |