ABP文档 - Mvc 控制器

文档目录html

 

本节内容:ajax

 

简介api

ABP经过nuget包Abp.Web.Mvc集成到Asp.net Mvc 控制器。你能够像往常那样建立普通的Mvc控制器,依赖注入能够对普通的Mvc控制器起做用,但你应当使你的控制继承自AbpController,它提供了许多好处和更好的集成到ABP。异步

 

AbpController基类spa

这是一个简单的继承自AbpController的控制器:.net

public class HomeController : AbpController
{
    public ActionResult Index()
    {
        return View();
    }
}

 

本地化 日志

ABP定义了L方法,使本地化更加容易,例如:code

public class HomeController : AbpController
{
    public HomeController()
    {
        LocalizationSourceName = "MySourceName";
    }

    public ActionResult Index()
    {
        var helloWorldText = L("HelloWorld"); return View();
    }
}

要先设置LocalizationSourceName,才能让L方法正常工做,你能够在你的控制器基类里设置,这样就不用为每一个控制器重复设置。orm

 

其它htm

你能够使用预先注入的AbpSessionEventBusPermissionManager、PermissionCheckerSettingManagerFeatureManager、FeatureCheckerLocalizationManagerLoggerCurrentUnitOfWork等基属性。

 

过滤

异常处理和结果包装

全部的异常都被自动处理、日志并返回一个适应的响应给客户端,更多信息查看异常处理

若是Action的返回类型是JsonResult(或异步的Task<JsonResult>),ABP也会默认地去包装这个结果。

你能够经过给控制器或Action使用WrapResult和DontWrapResult特性来修改异常处理和结果包装,也能够在启动配置(using Configuration.Modules.AbpMvc()...)进行全局设置。更多信息查看ajax文档

 

审计日志

AbpMvcAuditFilter用来集成到审计日志系统,它在默认状况下记录全部对全部Action请求(若是审计没有被禁用),你能够用Audited和DisableAuditing特性控制Action和控制器的审计日志。

 

验证

AbpMvcValidationFilter自动检查ModelState.IsValid并在检测到非法时阻止Action执行。实现输入DTO的验证在验证文档里进行了描述。

 

受权

你能够为你的api控制器或Action使用AbpApiAuthorize特性,阻止未受权用户访问它们,例如:

public class HomeController : AbpController
{
    [AbpMvcAuthorize("MyPermissionName")]     public ActionResult Index()
    {
        return View();
    }
}

 

你能够为Action或控制器定义AllowAnonymous特性,废止认证/受权。AbpApiController也定义了一个在定义里检查许可的快捷方法IsGranted。

更多信息查看受权文档。 

 

工做单元

AbpMvcUowFilter用来集成到工做单元系统,在一个Action执行前自动开始一个工做单元,并在Action执行结束后完成工做单元(若是没有异常抛出)。

你可为一个Action使用UnitOfWork特性,控制它的工做单元行为,你也能够在启动配置里为全部Action修改默认的工做单元特性。

 

防伪造

AbpAntiForgeryMvcFilter自动保护Mvc的Action,阻止来自CSRF/XSRF的POST、PUT和DELETE请求攻击。更多信息查看CSRF文档

 

模块绑定器

AbpMvcDateTimeBinder用来标准化经过Clock.Normalize方法输入的DateTime(和Nullable<DateTime>)。

相关文章
相关标签/搜索