微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Sitefinity MVC:如何在小部件模板的详细信息视图中获取内容项 Url

如何解决Sitefinity MVC:如何在小部件模板的详细信息视图中获取内容项 Url

我有一个带有自定义列表和详细信息小部件模板的自定义模块。在我的列表小部件模板中,我可以通过以下方式获取内容项 url:

@foreach (var item in Model.Items)
{
 var navigateUrl = HyperLinkHelpers.GetDetailPageUrl(item,ViewBag.DetailsPageId,ViewBag.OpenInSamePage,Model.UrlKeyPrefix); 
}

然后:

<a href="@navigateUrl">

为什么我不能在我的 Detail 小部件模板中做同样的事情并获得完整的内容 Item url?是否有不同的方法可以在 MVC 的 Detail 小部件模板中获取页面的完整 Url?

我收到这些构建错误

CS1061“ContentDetailsviewmodel”不包含“Items”的定义,并且找不到接受“ContentDetailsviewmodel”类型的第一个参数的可访问扩展方法“Items”(您是否缺少 using 指令或程序集引用?)

CS1061“ContentDetailsviewmodel”不包含“UrlKeyPrefix”的定义,并且找不到接受“ContentDetailsviewmodel”类型的第一个参数的可访问扩展方法“UrlKeyPrefix”(您是否缺少 using 指令或程序集引用?)

CS0103 当前上下文中不存在名称“navigateUrl”

解决方法

因此,如果您需要自己实现,请使用其中一种重载 https://github.com/Sitefinity/feather/blob/8c0bcde57c27322d48084485694f32e0714d15ee/Telerik.Sitefinity.Frontend/Mvc/Helpers/HyperLinkHelpers.cs#L32

用例是什么,你需要当前的 url,或者它就像一个相关的内容部分或其他东西?

旁注,你可以在这里浏览代码

https://github.com/Sitefinity/feather-widgets https://github.com/Sitefinity/feather https://github.com/Sitefinity/feather-packages

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。