我正在构建一个自定义 CodeAccessSecurityAttribute 来处理我的 WCF 服务的授权。我这样构建了A类:
public class A : CodeAccessSecurityAttribute
{
public A() : base(SecurityAction.Demand)
{
// Constructor Code
}
public override IPermission CreatePermission()
{
// Permission Creation Code
}
}
在编译时它会产生这个错误。
Error emitting 'A' attribute -- 'Serialized security custom attribute is
truncated or incorrectly formed.'
在玩了一点之后,我想出了下一个编译没有错误的示例:
public class B : CodeAccessSecurityAttribute
{
public B(SecurityAction Action) : base(Action)
{
// Constructor Code
}
public override IPermission CreatePermission()
{
// Permission Creation Code
}
}
我知道这是因为 SecurityAction 枚举没有直接引用到 A 类的公共方面,但我不知道如何制作它,以便我可以使用 A 类方法而不是 B 类方法。