在我的Silverlight应用程序中,我有15个以上的屏幕。我想要一个权限组“CanOnlySeeTraining”不能访问除2个之外的所有屏幕。我知道我可以把代码放在下面,但事情是我必须把这个代码放在每个和每个屏幕上,除了我希望他们看到的那两个外。在Silverlight C#中有没有一种方法可以让顶部的权限流入屏幕树(如Windows文件夹权限)?让我知道你是否需要更多的澄清。谢谢。是否有一种简单的方法可以将组限制在2个屏幕上?
partial void <ScreenName>_CanRun(ref bool result)
{
if (this.User.HasPermission(Permissions.CanOnlySeeTraining))
{
result = false;
}
else
{
result = true;
}
}
谢谢戴夫。你能详细说明一下,或者提供关于你如何做的代码示例?谢谢。 – ray500
我们有一个表定义了受控活动(通常是应用程序屏幕),另一个定义用户和用户组的对,一个将用户链接到组的组,以及一个将受控活动与用户组和权限级别关联的最终链接表,只读,修改,创建或监督(用于需要审批的工作流程))。有标准代码可以检查用户对活动的权限,并适当地设置屏幕级别的对象权限。如果他们没有屏幕权限,则不会出现在任何菜单中。 – DaveE