gpt4 book ai didi

episerver - 我怎么知道哪个标签导致 Controller 被选中?

转载 作者:行者123 更新时间:2023-12-01 02:21:52 25 4
gpt4 key购买 nike

在 EPiServer CMS 7 中,一个内容区可以标记一个或多个标签:

@Html.PropertyFor(x => x.CurrentPage.MainContent, new { Tag = "ContentTag" })

一种连接页面类型和标签以创建带有 TemplateDescriptor 的 Controller 的方法。属性:
[TemplateDescriptor(
TemplateTypeCategory = TemplateTypeCategories.MvcPartialController,
Default = true,
Tags = new[] { "ContentTag", "SecondTag" }
)]
public class SitePageDataController : PageController<SitePageData>
{
public ActionResult Index(SitePageData currentContent)
{
return View(currentContent);
}
}

在上面的例子中,SitePageDataController 可能由于两个标签而被选中。有没有办法在运行时找出哪个标签导致当前 Controller 被选中?

他们是我可以在我的 Controller 操作中调用的 API 来获取标签吗?

最佳答案

我知道这个问题是两年前问的,但有办法。简短的回答是写

var tag = ControllerContext.ParentActionViewContext.ViewData["tag"] as string;

(可以为空)

在你的行动中。这篇博文对其进行了更详细的描述 http://world.episerver.com/blogs/Anders-Hattestad/Dates/2014/3/EPiServer-7-and-MVC-Views-using-Tags/

关于episerver - 我怎么知道哪个标签导致 Controller 被选中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19863444/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com