小弟在做一个在线考试系统。。这个系统中有两个角色 分别是:老师跟学生
于是,小弟在web层里 建了两个文件夹,(Teacher文件夹,Student文件夹)用于存放,不同角色拥有不同功能的网页。
但是,如果当student角色登陆时,点击了只有老师角色才能浏览的网页时,我怎样才能,将这个点击的超链接 连到另外一个告示(对不起,你没有访问的权限)的网页呢?
应该在:Teacher文件夹里面的web.config文件里面怎样写才对?
<configuration>
  <appSettings/>
    <connectionStrings/>
    <system.web>
      <authorization>     
      <allow roles="Teacher"/>
        <deny users="*"/>
      </authorization>
    </system.web>
</configuration>

解决方案 »

  1.   

    可以考虑写一个类,如check_teacher,继承system.web.ui.page,用来判断是否是学生还是老师了。
      

  2.   

    你是如何判断成员属于哪个用户组的
    要是用SESSION
    不是更好办,判断当前页面是属于学生的文件夹还是教师的文件夹
    不是就用层来给个提示做返回呗
      

  3.   

    用户注册的时候 给他一个权限  老师一个  学生一个  
    登录的时候 不同的人 读取自己数据库中的权限 存放入session中
    然后 需要权限判断的页面 都要写一下session的判断 如果相同就继续 不相同 就提示 提示语句可以用脚本写 或跳到error页面显示也可以~(*^__^*) 嘻嘻……~希望对你有帮助~呵呵
      

  4.   

    asp.net网站下只能有一个web.config文件!!!!分等级判断是教师还是学生
      

  5.   

    简单权限验证
    http://blog.csdn.net/vip__888/archive/2010/05/11/5580282.aspx
    参考我最近写的一篇继承page基类从写相关请求事件来实现
      

  6.   

    如果在:protected override void OnInit(EventArgs e) 事件实现跳转到告示页,,不行呀。
    因为。先执行web.config 文件先,而Web.config文件已经拒绝了,所以好像 protected override void OnInit(EventArgs e) 事件都没的被执行的?
    不知小弟这样子做行不?用session来判断不同的角色,,然后再调用不同的JS文件:
    JS文件:
    document.writeln(' <asp:TreeView ID="TreeView1" runat="server" Height="277px" ImageSet="Faq" Width="221px">    ');
    document.writeln(' <ParentNodeStyle Font-Bold="False" />    ');
    document.writeln(' <HoverNodeStyle Font-Underline="True" ForeColor="Purple" />   ');
    document.writeln(' <SelectedNodeStyle Font-Underline="True" HorizontalPadding="0px" VerticalPadding="0px" />  ');
    document.writeln('  <Nodes>  ');document.writeln(' <asp:TreeNode Text="试题选择" Value="试题选择"> ');
    document.writeln('  <asp:TreeNode NavigateUrl="~/Student/ExamContent.aspx" Target="main_body" Text="选择题" Value="选择题"></asp:TreeNode>    ');document.writeln('  <asp:TreeNode Text="填空题" Value="填空题"></asp:TreeNode>  ');
    document.writeln('    <asp:TreeNode Text="问答题" Value="问答题"></asp:TreeNode> ');
    document.writeln('  </asp:TreeNode>  ');document.writeln(' <asp:TreeNode Text="查看我的信息" Value="查看我的信息">   ');
    document.writeln(' <asp:TreeNode Text="更改或找加密码" Value="个人信息" NavigateUrl="~/FindPassword.aspx" Target="main_body">   ');
    document.writeln(' </asp:TreeNode>   ');document.writeln(' <asp:TreeNode Text="查看我的分数" Value="查看我的分数" NavigateUrl="~/Student/SearchMyScore.aspx" Target="main_body"> </asp:TreeNode> ');
    document.writeln('   </asp:TreeNode>  ');document.writeln('  </Nodes>  ');
    document.writeln('<NodeStyle Font-Names="Tahoma" Font-Size="8pt" ForeColor="DarkBlue" HorizontalPadding="5px" NodeSpacing="0px" VerticalPadding="0px" /> ');
    document.writeln(' </asp:TreeView>    ');
    引用这段JS文件的 DIV:<div style="height:369px; width:221px">
                <script language="javascript" type="text/javascript" src="JS/Student.js"></script>
                </div> 
    但是,运行页面时,没有效果 ,,只是空白 的一片小弟恳请高手。。帮帮小弟看看看,到底是那里出错了。。
      

  7.   

    配置文件中好像有个<customErrors> 这样的节点吧,可以自己配置相应的处理步骤
      

  8.   

    SESSION里不行吗?
    应该是有个标记什么的有区别的吗。