我遇到了將自定義控制器添加到我的Piranha CMS的問題。 我已經建立了一個新的網站,並從模板安裝,所有的基本功能運作良好。 我已經使用從文檔下面的代碼添加的菜單到管理部分:Piranha CMS管理自定義控制器未找到
Manager.Menu.Add(new Manager.MenuGroup()
{
InternalId = "MEProducts",
Name = "Products"
});
Manager.Menu.Where(m => m.InternalId == "MEProducts").Single().Items =
new List<Manager.MenuItem>() {
new Manager.MenuItem() {
Name = "Products",
Action = "productlist",
Controller = "products",
Permission = "ADMIN",
SelectedActions = "productlist,productedit"
},
new Manager.MenuItem() {
Name = "Product groups",
Action = "productgrouplist",
Controller = "products",
Permission = "ADMIN",
SelectedActions = "productgrouplist,productgroupedit"
}
};
此菜單顯示在管理員界面精緻,問題是,當我在菜單項上單擊控制器路徑不能找到。
的控制器類是地區/經理/控制器/ ProductsController.cs和代碼如下
namespace MyApp.Areas.Manager.Controllers
{
public class ProductsController : ManagerController
{
//
// GET: /Manager/Products/
public ActionResult Index()
{
return View();
}
public ActionResult ProductList()
{
return View();
}
public ActionResult ProductEdit(string id = "")
{
return View();
}
}
}
有用於ProductList
和查看文件中的區域/經理/瀏覽/產品ProductEdit
/
我的web配置包含以下行,我認爲我需要
<add key="manager_namespaces" value="MyApp.Areas.Manager.Controllers" />
當我點擊該產品在MANAG鏈接呃我得到
無法找到該資源。 描述:HTTP 404.您正在查找的資源(或其某個依賴項)可能已被刪除,名稱已更改或暫時不可用。請檢查以下網址並確保它拼寫正確。 請求的網址:/ MyApp/manager/products/productlist
對於默認配置,頁面/ MyApp/manager /頁面顯示正常。
我確定我錯過了某些東西,或者做了某些不正確的事情,我只是不確定它在哪裏。
下載謝謝。你的測試項目工作完美,我會用它來解決我的問題。非常感謝你。 – Lepon
非常好,當你找出導致錯誤的原因時,讓我知道是否需要在某處澄清文檔! –
如果有人感興趣,我發現我做錯了。在http://piranhacms.org/docs/extend/custom-entities它聲明使用 appSettings> 但真的需要在 –
Lepon