Моя маршрутизация в program.cs:
Код: Выделить всё
app.MapDefaultControllerRoute();
app.MapAreaControllerRoute(
name: "Admin",
areaName: "Admin",
pattern: "Admin/{controller=Home}/{action=Index}/{id?}"
);
Код: Выделить всё
@model List
@{
ViewData["Title"] = "Index";
Layout = "~/Areas/Admin/Views/Shared/_AdminLayout.cshtml";
}
Add Category
[h4]Table Basic[/h4]
Name
Created By
Status
Actions
@foreach (var item in Model)
{
@item.Name
@item.CreatedBy
@item.IsDeleted
Update
Delete
}
Код: Выделить всё
namespace AnimeUI.Areas.Admin.Controllers
{
[Area("Admin")]
public class CategoryController : Controller
{
private readonly ICategoryService categoryService;
private readonly IValidator validator;
private readonly IMapper mapper;
public CategoryController(ICategoryService categoryService, IValidator validator, IMapper mapper)
{
this.categoryService = categoryService;
this.validator = validator;
this.mapper = mapper;
}
public async Task Index()
{
var categories = await categoryService.GetAllCategoriesNonDeletedAsync();
return View(categories);
}
[HttpGet]
public IActionResult Add()
{
return View();
}
[HttpPost]
public async Task Add(AddCategoryDto addCategoryDto)
{
var category = mapper.Map(addCategoryDto);
var result = validator.Validate(category);
var exists = await categoryService.Exists(category);
if (exists)
result.Errors.Add(new ValidationFailure("Name", "This category name already exists"));
if (result.IsValid)
{
await categoryService.CreateCategoryAsync(addCategoryDto);
return RedirectToAction("Index", "Category", new { Area = "Admin" });
}
result.AddToModelState(this.ModelState);
return View(addCategoryDto);
}
}
}
PS: Моя проблема возникает только тогда, когда мне нужно перейти на страницы администратора.
Подробнее здесь: https://stackoverflow.com/questions/782 ... gory-addar