asp.net-mvc - 无法将类型“Kentico.Web.Mvc.IHtmlContentProxy”隐式转换为“System.Web.HtmlString”
问题描述
在我的 Razor 视图页面中出现这些错误:
HtmlString GetActionUrl()
{
return Url.Kentico().AuthenticateUrl(Url.Action("Upload", "ImageUploader", new
{
pageId = Context.Kentico().PageBuilder().PageIdentifier
}), false);
}
添加了 WebConfig:
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.7.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<add namespace="System.Web.Mvc"/>
<add namespace="System.Web.Mvc.Ajax"/>
<add namespace="System.Web.Mvc.Html"/>
<add namespace="System.Web.Optimization"/>
<add namespace="System.Web.Routing"/>
<add namespace="ResolutionDigital"/>
<add namespace="Kentico.Content.Web.Mvc"/>
<add namespace="Kentico.PageBuilder.Web.Mvc"/>
<add namespace="Kentico.Web.Mvc"/>
</namespaces>
</pages>
</system.web.webPages.razor>
我是否缺少一些指令或参考?任何人都可以帮忙吗?我错过了什么?
解决方案
只是在这里添加我的评论,我以某种方式解决了这个问题。我正在为该项目使用 xperience 13。可能我在添加与 kentico 12 相同的代码时遇到了版本问题。但我们可以改用它。
var urlHelper = new UrlHelper(HttpContext.Current.Request.RequestContext);
string GetActionUrl()
{
return urlHelper.Kentico().AuthenticateUrlRaw(urlHelper.Action("Upload", "ImageUploader", new
{
pageId = Service.Resolve<IPageDataContextRetriever>().Retrieve<TreeNode>().Page.DocumentID
}), false);
}
我相信您还需要添加一些参考。
@使用 CMS.Core @使用 CMS.DocumentEngine
谢谢!
推荐阅读
- flutter - Flutter:SliverAppBar 禁用滚动
- python-3.x - python类方法没有输出
- python - 我可以在 mayavi 中绘制两个不重叠的等值面吗?
- android - React Native - 成功构建和设备查找后:“adb reverse”:spawnSync C:\Users\NAME\AppData\Local\Andriod\Sdk/platform-tools/adb ENOENT
- java - 将鼠标悬停在每颗星星上,然后最后点击第四颗星星
- unity3d - 对象移动或动画时链 IK 抖动
- html - 材质 UI - Grid CardContent 仅强制溢出 y
- grpc - 带有 GRPC 服务器流式处理的 Envoy 代理抛出 UNAVAILABLE:上游请求超时
- python - 如何使用 js 将 {% include %} 附加到 html?
- sql - 如何在一个度量中计算两个事件之间的差异?