我有一个Windows服务,我将userId传递给针对数据库验证的每个服务调用。现在我必须在内部调用每个方法中的验证方法。我试图创建一个c#属性,我可以为每个方法添加前缀并让它为我做验证,但我不确定如何从属性中读取方法userId参数。
这就是我所拥有的:
public int GetANumber(Guid userId){
ValidateUserId(userId);
return 1;
}
这就是我想要的:
[ValidateUserId]
public int GetANumber(Guid userId){
return 1;
}
到目前为止,这是我的属性:
[AttributeUsage(AttributeTargets.Method)]
public sealed class ValidateUserId : Attribute
{
public ValidateUserId()
{
//need to get userId from method here and check against db
}
}
有什么想法吗?