using System; using System.Linq.Expressions; using Infrastructure.Application; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.Rendering; namespace Infrastructure.Web { public class BaseController : Controller { public IActionResult RedirectTo(string action = "Index", string controller = null, string message = "操作成功,正在为您跳转", object routeValues = null, string returnUrl = null) { ViewBag.Message = message; ViewBag.Url = string.IsNullOrEmpty(returnUrl) ? Url.Action(action, controller, routeValues) : returnUrl; return View("Redirect"); } public void SelectList(Expression> expression, Func selectListFunc, bool value = true) { if (value) { var name = (expression.Body as MemberExpression).Member.Name; SelectList(name, selectListFunc, true); } } public void SelectList(string name, Func selectListFunc, bool value = true) { if (value) { ViewData[name] = selectListFunc(); } } } }