У меня возникла проблема с добавлением пользовательского контроллера к моей Piranha CMS. Я установил новый сайт и установил его из шаблона, и все базовые функции работают хорошо. Я добавил меню в разделе менеджера, используя следующий код из документации:Piranha CMS Management Custom Controller не найден
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"
}
};
В этом меню отображается в менеджере интерфейса штрафа, проблема в том, когда я нажимаю на пункт меню путь контроллера не может быть найденный.
Контроллер класс находится в Areas/менеджер/Контроллеры/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
в Areas/менеджер/Views/Products/
Моего веб-конфигурация содержит следующую строку, я считаю, мне нужно
<add key="manager_namespaces" value="MyApp.Areas.Manager.Controllers" />
Когда я нажимаю на продукции ссылку в Реагирах er Я получаю
Ресурс не найден. Описание: HTTP 404. Ресурс, который вы ищете (или его зависимости), мог быть удален, изменилось его имя или временно недоступно. Просмотрите следующий URL-адрес и убедитесь, что оно написано правильно. Запрошенный URL:/MyApp/менеджер/Продукты/ProductList
страница/MyApp/менеджер/страница отображает штраф для конфигурации по умолчанию.
Я уверен, что что-то пропустил или что-то сделал неправильно, я просто не уверен, где он.
Скачано спасибо. Ваш тестовый проект работает отлично, я буду использовать это, чтобы понять, что не так с моим. Большое вам спасибо за это. – Lepon
Отлично, когда вы узнаете, что вызвало ошибку, сообщите мне, если где-то нужно уточнить документацию! –
Если кто-то заинтересован, я нашел то, что сделал неправильно. На http://piranhacms.org/docs/extend/custom-entities говорится использовать <добавить ключ = "manager_namespaces" Value = "MyApp.Controllers" /> AppSettings> Но на самом деле это нужно находится в –
Lepon