I have a common method among multiple controllers, not all. Is correct to put the method in a controller base and all other controllers inherit it?
public class BaseController : Controller
{
public IEnumerable<SelectListItem> GetStatus()
{
IList<SelectListItem> status = new List<SelectListItem>();
status.Add(new SelectListItem() { Text = "Select", Value = "" });
Enum.GetValues(typeof(Status)).Cast<Status>().ToList().Select(x => new SelectListItem()
{
Text = x.ToString(),
Value = ((byte)x).ToString()
}).ToList().ForEach(status.Add);
return status;
}
}
public class DownloadController : BaseController
{
public ActionResult New()
{
NewViewModel newViewModel = new NewViewModel();
newViewModel.Status = GetStatus();
return View(newViewModel);
}
}