从Orchard的ApiController中获取内容项的URL

时间:2014-03-06 15:19:51

标签: c# asp.net-mvc-4 orchardcms

对于ApiController中的某个内容项,是否有显示网址的方法?在常规的MVC控制器中,我可以做到

Url.ItemDisplayUrl(item)

我希望能够通过ApiController做类似的事情。

2 个答案:

答案 0 :(得分:1)

如果您查看ContentItemExtensions,您会看到从元数据中检索到的网址。如果你正在使用AutoroutePart,你也可以从那里获得它。

答案 1 :(得分:1)

您可以使用

创建System.Web.Mvc.UrlHelper的实例(常规MVC控制器中Url属性的类型)
var myUrlHelper = new System.Web.Mvc.UrlHelper(HttpContext.Current.Request.RequestContext);

如果您将using Orchard.Mvc.Html;添加到顶部,则可以执行

myUrlHelper.ItemDisplayUrl(item);