1.Mono的CustomConditionAttribute使用有诸多的限制,没有在XML中定义来的灵活
2.CustomConditionAttribute定义的子类必须和ExtensionAttribute配合使用
3.ExtensionAttribute的NodeName的值和ExtensionNode 的name属性必须一致(可以都不设置)
[AuthorizeConditionAttribute("true")] [ExtensionAttribute("/A/B"/*,NodeName ="Node1"/)] public class A : ICommand
public class AuthorizeConditionAttribute : CustomConditionAttribute { public AuthorizeConditionAttribute([NodeAttribute("value")]string value) { this.Value = value; } [NodeAttribute("value")] public string Value { get; } }
<ExtensionNodeSet id = "A.B" > <!-name和上面的 A的ExtensionAttribute的NodeName一致 --> <ExtensionNode name="Node1"> <!--如果使用扩展CustomConditionAttribute进行描述--> <Description>可以使用CustomConditionAttribute</Description> </ExtensionNode> </ExtensionNodeSet>
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步