如何在Kentico 13 Core的.cshtml中获取当前页面URL?报错求助
在Kentico 13的.cshtml页面中获取当前页面URL的解决方法
你遇到的问题是因为GetDisplayUrl()是ASP.NET Core专属的HttpRequest扩展方法,而Kentico 13基于ASP.NET MVC 5,两者框架不同,所以找不到该方法。以下是几种可行的解决方案:
获取原始请求的完整URL
直接使用ASP.NET MVC 5原生的方法:@Request.Url.ToString()或者获取包含查询字符串的绝对URI:
@Request.Url.AbsoluteUri获取Kentico页面的友好URL(含别名)
如果需要的是Kentico系统中配置的页面友好URL(而非原始请求URL),可以使用Kentico的内置API,记得先添加对应的命名空间:@using Kentico.Content.Web.Mvc @using Kentico.PageBuilder.Web.Mvc @{ var currentPage = Context.Kentico().PageBuilder().GetCurrentPage(); string friendlyPageUrl = currentPage?.GetPageUrl(); } @friendlyPageUrl这个方法会自动处理页面别名、站点域名等配置,返回符合Kentico设置的页面URL。
内容的提问来源于stack exchange,提问作者Amarnath behera
相关产品推荐
相关产品推荐

