食人鱼 CMS 删除管理器菜单项
Piranha CMS remove manager menu item
文档中指出您可以从界面中删除默认视图。我使用以下代码添加了一个新的菜单项选项卡:
Piranha.WebPages.Manager.Menu.Where(m => m.InternalId == "Content").Single().Items.Add(
new Piranha.WebPages.Manager.MenuItem()
{
Name = "TSI Post",
Action = "Index",
Controller = "TSIPost",
Permission = "ADMIN_POST"
});
我想删除默认的 Post 选项卡。
我尝试了以下代码的多种变体。
Piranha.WebPages.Manager.Menu.Where(m => m.InternalId == "Content").Single().Items.Remove(
new Piranha.WebPages.Manager.MenuItem()
{
InternalId = "Posts",
Name = "Posts",
Action = "index",
Controller = "post",
Permission = "ADMIN_POST"
});
删除选项卡的正确语法是什么?
第二段代码的问题在于,您正在创建一个尚未添加的全新 MenuItem,然后您尝试将其从集合中删除。这个新对象不存在,所以什么也没有发生。要删除默认的 post 页面,您可能需要编写如下内容:
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());
此语句删除当前菜单集合中具有内部 ID "Posts" 的项目。
此致
哈坎
文档中指出您可以从界面中删除默认视图。我使用以下代码添加了一个新的菜单项选项卡:
Piranha.WebPages.Manager.Menu.Where(m => m.InternalId == "Content").Single().Items.Add(
new Piranha.WebPages.Manager.MenuItem()
{
Name = "TSI Post",
Action = "Index",
Controller = "TSIPost",
Permission = "ADMIN_POST"
});
我想删除默认的 Post 选项卡。 我尝试了以下代码的多种变体。
Piranha.WebPages.Manager.Menu.Where(m => m.InternalId == "Content").Single().Items.Remove(
new Piranha.WebPages.Manager.MenuItem()
{
InternalId = "Posts",
Name = "Posts",
Action = "index",
Controller = "post",
Permission = "ADMIN_POST"
});
删除选项卡的正确语法是什么?
第二段代码的问题在于,您正在创建一个尚未添加的全新 MenuItem,然后您尝试将其从集合中删除。这个新对象不存在,所以什么也没有发生。要删除默认的 post 页面,您可能需要编写如下内容:
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());
此语句删除当前菜单集合中具有内部 ID "Posts" 的项目。
此致
哈坎