14.功能FeatureProvider

一、概述

二、使用

2.1定义

public class AppFeatureProvider : FeatureProvider
{
    public override void SetFeatures(IFeatureDefinitionContext context)
    {
        var sampleBooleanFeature = context.Create("SampleBooleanFeature", defaultValue: "false");
        sampleBooleanFeature.CreateChildFeature("SampleNumericFeature", defaultValue: "10");
        context.Create("SampleSelectionFeature", defaultValue: "B");
    }
}

2.2 配置

Configuration.Features.Providers.Add<AppFeatureProvider>();

2.3 调用

2.3.1通过特性

//ExportToExcel(是否为当前用户启用) 
//如果启用那么这个方法会被执行,如果没有被启用则抛出异常。
[RequiresFeature("ExportToExcel")]
public async Task<FileDto> GetReportToExcel(...)
{
}

2.3.2 使用IFeatureChecker

public async Task<FileDto> GetReportToExcel(...)
{
    if (await FeatureChecker.IsEnabledAsync("ExportToExcel"))
    {
          throw new AbpAuthorizationException("You don't have ExportToExcel");
    }   
}
//获取值
FeatureChecker.GetValue("MaxTaskCreationLimitPerMonth"))

2.3.3 通过客户端

//isEnabled
var isEnabled = abp.features.isEnabled('SampleBooleanFeature');
//getValue
var value = abp.features.getValue('SampleNumericFeature');
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,854评论 18 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 172,975评论 25 708
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 46,935评论 6 342
  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 11,096评论 6 13
  • 面對這一次的教練之旅,起初內心充滿了渴望、期待甚至是一番抱負和一番作為而來的!而隨著這過去的84天,這一...
    落子无悔ss阅读 232评论 0 0