none
Bloquear tela Asp.net RRS feed

  • Pergunta

  • Tenho um menu que é habilitado por visible= true e visible= false, 

    sempre que digito o endereço da tela ela carrega mesmo se não estiver a habilitada no menu.

    ex

    MENU1

    MENU1 

    aí eu digito o endereço MENU3 e é carregado, ou seja esse menu existe, mas não pode carregar.

    sexta-feira, 13 de fevereiro de 2015 17:09

Todas as Respostas

  • Qual sua dúvida, não entendi

    Junior

    sexta-feira, 13 de fevereiro de 2015 17:34
  • EX ::

    o Cliente X pode apenas vê os menu 

    Chamadas e Detalhamento.

    Vamos dizer que no sistema tem 10 Menus 

    Esse cliente X digita um menu que não está amostra pra ele, ou seja um menu que não está na lista dele.

    EX:

    Tem esse menu FATURAMENTO  ele ele digita no endereço

    www.ninja.com.br/faturamento.aspx

    O menu é carregado.

    Entendeu ? 

    sexta-feira, 13 de fevereiro de 2015 17:41
  • Vc monta o menu dinamicamente apenas com as permissões que cada usuário tem, vc não precisa montar o menu completo e esconder o que o usuário não usa. 

    Tenho uma sistema aqui que funciona exatamente desse jeito. 

    tenho as tabelas : usuario, sistema,opcao,acesso

    onde acesso vai ter tudo, faço a consulta e monto o menu somente com as permissões que o usuário tiver.


    Junior

    sexta-feira, 13 de fevereiro de 2015 18:08
  • Junior os meus menus é montado apenas de UL 

    Cliente logando

    EX:

    Login :pedro

    senha: 123

    Ao clicar ele vai no banco vê as permissões que esse cliente tem e retorna uma string, nessa string ta os menus separado por (,)  dou um Split e faço um for separando cada string dentro de for ele convert a string para control transformando em visible= true;


    sexta-feira, 13 de fevereiro de 2015 18:17
  • Se vc já trás somente as permissões pq esconder o menu, não entendi.

    Junior

    sexta-feira, 13 de fevereiro de 2015 18:23
  • Junior é exatamente isso

           // Verifica o login para habilitar os menus que é refente ao login

                

     string funcao = dt.Rows[0]["funcao"].ToString();
    string[] valores = funcao.Split(',');

        foreach (string funcaoValores in valores)
                {
                    string  validar = funcaoValores.Trim();
                    Control control = FindControl(validar);
                    control.Visible = true;
                }

    Vamos dizer que eu habilitei 2 opções.

    1- Detalhamento (call.net.com/detalhamentos.aspx)

    2-  Valores (call.net.com/valores.aspx)

     Só tem a opção de clicar entre um  ou outro.

    Vamos dizer que eu conheça uma outra tela 

    ex:

    Tela de JUROS e coloque assim no endereço (call.net.com/juros.aspx) no caso era pra não mostrar, mas ele está mostrando a tela toda. 

    quinta-feira, 19 de fevereiro de 2015 11:58
  • Pelo o que eu entendi da sua duvida, você teria que verificar a permissão do usuário. 

    Gabriel Bicca

    quinta-feira, 19 de fevereiro de 2015 19:48
  • Kara é uma coisa simples.

    Pensa assim: todos os menus estão ocultados, e eu coloquei visible = true em 3, logo vai mostrar os 3, então se eu digitar o endereço de um menu que não está como visible = true vai acontecer que ele vai aparecer.

    sexta-feira, 20 de fevereiro de 2015 12:21