zoukankan      html  css  js  c++  java
  • ABP文档

    文档目录

    本节内容:

    简介

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

    AbpController基类

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

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

    本地化 

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

    public class HomeController : AbpController
    {
        public HomeController()
        {
            LocalizationSourceName = "MySourceName";
        }
    
        public ActionResult Index()
        {
            var helloWorldText = L("HelloWorld");
    
            return View();
        }
    }

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

    其它

    你可以使用预先注入的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>)。

  • 相关阅读:
    js中this应用
    易语言学习
    哈希表和字典List和Ilist和array和arraylist的应用
    ExtJs中decode与encode(转载)
    ajax几种请求几种类型
    关于Json
    简单属性margin和padding
    ==和===的区别
    maven实战读书笔记(三)
    maven实战读书笔记(二)
  • 原文地址:https://www.cnblogs.com/kid1412/p/6014030.html
Copyright © 2011-2022 走看看