gpt4 book ai didi

.net - 服务契约(Contract)的 PrincipalPermission 属性

转载 作者:行者123 更新时间:2023-12-01 01:13:36 25 4
gpt4 key购买 nike

为什么不能将 PrincipalPermission 放在服务契约(Contract)接口(interface)上是否有技术原因?它仅适用于实现契约(Contract)的类或直接适用于类方法。

这行不通。

[ServiceContract]
public interface IMyService
{
[PrincipalPermission(SecurityAction.Demand, Role="Admin")]
[OperationContract]
void MyFunction(string str);
}

但是,如果我将属性放在实现 IMyService 的类中的匹配方法上,它就会起作用。

最佳答案

在运行时检查角色,使用实现方法上的属性,而不是方法实现的接口(interface)上的属性。更一般地,在 .NET 中,放置在方法上的自定义属性与放置在相应接口(interface)方法上的自定义属性(如果有)之间没有直接关系。

关于.net - 服务契约(Contract)的 PrincipalPermission 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13517343/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com