Piranha CMS删除经理菜单项

时间:2015-03-05 15:43:27

标签: piranha-cms

在文档中,它声明您可以从界面中删除默认视图。我添加了一个新的菜单项选项卡,其中包含以下代码:     Piranha.WebPages.Manager.Menu.Where(m => m.InternalId ==“Content”)。Single()。Items.Add(     新的Piranha.WebPages.Manager.MenuItem()     {         名称=“TSI Post”,         行动=“指数”,         Controller =“TSIPost”,         Permission =“ADMIN_POST”     }

);

我想删除默认的帖子标签。 我尝试了以下代码的许多变体。 Piranha.WebPages.Manager.Menu.Where(m => m.InternalId ==“Content”)。Single()。Items.Remove(     新的Piranha.WebPages.Manager.MenuItem()     {         InternalId =“帖子”,         Name =“帖子”,         动作=“索引”,         Controller =“post”,         Permission =“ADMIN_POST”     }

);

删除标签的正确语法是什么?

1 个答案:

答案 0 :(得分:0)

您的第二块代码的问题在于您正在创建一个尚未添加的全新MenuItem,然后您尝试将其从集合中删除。这个新对象不存在,所以没有任何反应。要删除默认帖子页面,您可能需要编写如下内容:

Manager.Menu.Where(m => m.InternalId == "Content")
  .Single().Items.Remove(
    Manager.Menu.Where(m => m.InternalId == "Content").Single()
      .Items.Where(i => i.InternalId == "Posts").Single());

此语句删除当前菜单集中存在内部标识“Posts”的项目。

此致

哈坎