none
RadioButtonList responde após 1 minuto RRS feed

  • Pergunta

  • Como posso mehorar essa performance? Como melhorar esse código? Além do radiobuttonlist, um dropdownlist que simplesmente seleciona a UF e retorna em outro DropDownList com os município também esta levando 1 minuto para o carregamento.
    ''' <summary>
        ''' Direciona para cada View conforme as categorias de cadastro: Endereço, Pessoa Jurídica ou Pessoa Física
        ''' </summary>
        ''' <param name="sender"></param>
        ''' <param name="e"></param>
        ''' <remarks></remarks>
        Protected Sub RadioButtonList1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles rblCategoriaCadastro.SelectedIndexChanged
            btnInserirEnd.Enabled = True
            btnPesquisarEnd.Enabled = True
            txtPesquisaEnd.Enabled = True
            btnInserirPJ.Enabled = True
            btnPesquisarPJ.Enabled = True
            txtPesquisaPJ.Enabled = True
            btnInserirUA.Enabled = True
            btnPesquisarUA.Enabled = True
            txtPesquisaUA.Enabled = True
            btnInserirUS.Enabled = True
            btnPesquisarUS.Enabled = True
            txtPesquisaUS.Enabled = True
            btnInserirPF.Enabled = True
            btnPesquisarPF.Enabled = True
            txtPesquisaPF.Enabled = True
            btnInserirUsu.Enabled = True
            btnPesquisarUsu.Enabled = True
            txtPesquisaUsu.Enabled = True
            btnInserirUsu.Enabled = True
            btnPesquisarUsu.Enabled = True
            txtPesquisaUsu.Enabled = True
            If rblCategoriaCadastro.SelectedIndex = 0 Then
                mtvCadastro.ActiveViewIndex = 0
            ElseIf rblCategoriaCadastro.SelectedIndex = 1 Then
                mtvCadastro.ActiveViewIndex = 1
                TabContainerPJ.ActiveTabIndex = 0
                CargaddlPJEnd()
                CargaddlPJEnd0()
                CargaddlPJEnd1()
            ElseIf rblCategoriaCadastro.SelectedIndex = 2 Then
                mtvCadastro.ActiveViewIndex = 4
                TabContainerPF.ActiveTabIndex = 0
                CargaddlPFEnd()
                CargaNomeTrab()
                CargaNomeUsu()
            End If
        End Sub
    
    Private Sub CargaddlPJEnd()
            DSet.Tables.Clear()
            ddlPJEnd.Items.Clear()
            Dadapter.SelectCommand = New OleDbCommand("SELECT tipo + ' ' + logradouro + ',' + numero + ' - ' + municipio as DESCRICAO, codendereco FROM tbCadEndereco ORDER BY tipo,logradouro", New OleDbConnection(My.Settings.SIAConecte))
            Dadapter.Fill(DSet, "TBEndPJ")
            ddlPJEnd.DataSource = DSet.Tables("TBEndPJ")
            ddlPJEnd.DataTextField = ("DESCRICAO")
            ddlPJEnd.DataValueField = ("codendereco")
            ddlPJEnd.DataBind()
            ddlPJEnd.Items.Insert(0, "")
            ddlPJEnd.SelectedIndex = 0
        End Sub
    
        Protected Sub ddlPJEnd_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ddlPJEnd.SelectedIndexChanged
            lblCodEndPJ.Text = ddlPJEnd.SelectedValue()
        End Sub
    
     Private Sub CargaddlPJEnd0()
            DSet.Tables.Clear()
            ddlPJEnd0.Items.Clear()
            Dadapter.SelectCommand = New OleDbCommand("SELECT tipo + ' ' + logradouro + ',' + numero + ' - ' + municipio as DESCRICAO, codendereco FROM tbCadEndereco ORDER BY logradouro", New OleDbConnection(My.Settings.SIAConecte))
            Dadapter.Fill(DSet, "TBEndUA")
            ddlPJEnd0.DataSource = DSet.Tables("TBEndUA")
            ddlPJEnd0.DataTextField = ("DESCRICAO")
            ddlPJEnd0.DataValueField = ("codendereco")
            ddlPJEnd0.DataBind()
            ddlPJEnd0.Items.Insert(0, "")
            ddlPJEnd0.SelectedIndex = 0
        End Sub
    
        Protected Sub ddlPJEnd0_SelectedIndexChanged1(sender As Object, e As EventArgs) Handles ddlPJEnd0.SelectedIndexChanged
            lblCodEndUA.Text = ddlPJEnd0.SelectedValue()
        End Sub
    
     Private Sub CargaddlPJEnd1()
            DSet.Tables.Clear()
            ddlPJEnd1.Items.Clear()
            Dadapter.SelectCommand = New OleDbCommand("SELECT tipo + ' ' + logradouro + ',' + numero + ' - ' + municipio as DESCRICAO, codendereco FROM tbCadEndereco ORDER BY logradouro", New OleDbConnection(My.Settings.SIAConecte))
            Dadapter.Fill(DSet, "TBEndUS")
            ddlPJEnd1.DataSource = DSet.Tables("TBEndUS")
            ddlPJEnd1.DataTextField = ("DESCRICAO")
            ddlPJEnd1.DataValueField = ("codendereco")
            ddlPJEnd1.DataBind()
            ddlPJEnd1.Items.Insert(0, "")
            ddlPJEnd1.SelectedIndex = 0
        End Sub
    
        Protected Sub ddlPJEnd1_SelectedIndexChanged1(sender As Object, e As EventArgs) Handles ddlPJEnd1.SelectedIndexChanged
            lblCodEndUS.Text = ddlPJEnd1.SelectedValue()
        End Sub
    
     Private Sub CargaddlPFEnd()
            DSet.Tables.Clear()
            ddlPFEnd2.Items.Clear()
            Dadapter.SelectCommand = New OleDbCommand("SELECT tipo + ' ' + logradouro + ',' + numero + ' - ' + municipio as DESCRICAO, codendereco FROM tbCadEndereco ORDER BY logradouro", New OleDbConnection(My.Settings.SIAConecte))
            Dadapter.Fill(DSet, "TBEndPF")
            ddlPFEnd2.DataSource = DSet.Tables("TBEndPF")
            ddlPFEnd2.DataTextField = ("DESCRICAO")
            ddlPFEnd2.DataValueField = ("codendereco")
            ddlPFEnd2.DataBind()
            ddlPFEnd2.Items.Insert(0, "")
            ddlPFEnd2.SelectedIndex = 0
        End Sub
    
        Protected Sub ddlPFEnd2_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ddlPFEnd2.SelectedIndexChanged
            lblCodEndPF.Text = ddlPFEnd2.SelectedValue()
        End Sub
    
    Private Sub CargaNomeTrab()
            DSet.Tables.Clear()
            ddlNomeTrab.Items.Clear()
            Dadapter.SelectCommand = New OleDbCommand("SELECT nome + ' ' + sobrenome as NomeCompleto, codigoPF FROM tbCadPessoaFisica ORDER BY nome", New OleDbConnection(My.Settings.SIAConecte))
            Dadapter.Fill(DSet, "TBNomeTrab")
            ddlNomeTrab.DataSource = DSet.Tables("TBNomeTrab")
            ddlNomeTrab.DataTextField = ("NomeCompleto")
            ddlNomeTrab.DataValueField = ("codigoPF")
            ddlNomeTrab.DataBind()
            ddlNomeTrab.Items.Insert(0, "")
            ddlNomeTrab.SelectedIndex = 0
        End Sub
    
        Protected Sub ddlNomeTrab_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ddlNomeTrab.SelectedIndexChanged
            lblCodPFTrab.Text = ddlNomeTrab.SelectedValue()
        End Sub
     Private Sub CargaNomeUsu()
            DSet.Tables.Clear()
            ddlNomeUsu.Items.Clear()
            Dadapter.SelectCommand = New OleDbCommand("SELECT nome + ' ' + sobrenome as NomeCompleto, codigoPF FROM tbCadPessoaFisica ORDER BY nome", New OleDbConnection(My.Settings.SIAConecte))
            Dadapter.Fill(DSet, "TBNomeUsu")
            ddlNomeUsu.DataSource = DSet.Tables("TBNomeUsu")
            ddlNomeUsu.DataTextField = ("NomeCompleto")
            ddlNomeUsu.DataValueField = ("codigoPF")
            ddlNomeUsu.DataBind()
            ddlNomeUsu.Items.Insert(0, "")
            ddlNomeUsu.SelectedIndex = 0
        End Sub
    
        Protected Sub ddlNomeUsu_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ddlNomeUsu.SelectedIndexChanged
            lblCodPFUsu.Text = ddlNomeUsu.SelectedValue()
        End Sub

    quarta-feira, 13 de junho de 2012 11:58

Todas as Respostas

  • Eu testaria as querys no banco primeiro, para ver o problema de performace é na consulta, ou na página.

    http://samuelcazelli.blogspot.com/

    quarta-feira, 13 de junho de 2012 12:08
  • É na página, aplicativo publicado, mas veja ocorre ao utilizar qualquer comando ASP que necessite do banco. Em Start Debugging o retorno é em tempo real.
    quarta-feira, 13 de junho de 2012 12:14
  • São muitos municípios que são retornados?

    O que pode estar acontecendo é que sua página está muito grande dai dependendo da banda/servidor demora para baixar.


    http://samuelcazelli.blogspot.com/

    quarta-feira, 13 de junho de 2012 12:25
  • Veja é um banco com os estados e os municípios do Brasil, como qualquer cadastro.
     Protected Sub ddlUF_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ddlUF.SelectedIndexChanged
            DSet.Tables.Clear()
            ddlMun.Items.Clear()
            Dadapter.SelectCommand = New OleDbCommand("SELECT MUNNOME FROM tbCadmun A, tbCaduf B WHERE A.UFCOD = B.UFCOD AND B.UFNOME = '" & ddlUF.Text & "' ORDER BY MUNNOME", New OleDbConnection(My.Settings.SIADSConecte))
            Dadapter.Fill(DSet, "TBMUN")
            ddlMun.DataSource = DSet.Tables("TBMUN")
            ddlMun.DataTextField = ("MUNNOME")
            ddlMun.DataBind()
        End Sub

    • Editado Wilson Boris quarta-feira, 13 de junho de 2012 12:37
    quarta-feira, 13 de junho de 2012 12:37
  • Samuel, como é possível um retorno da abrangência geográfica, como no site abaixo:

    http://www2.datasus.gov.br/DATASUS/index.php?area=0203&VObj=http://tabnet.datasus.gov.br/cgi/deftohtm.exe?sih/cnv/nr

    quarta-feira, 13 de junho de 2012 12:42
  • Dá uma verificada no tamanho da viewstate. Talves ela esteja muito grande.

    Você pode ver isso através desse plugin para chrome: https://chrome.google.com/webstore/detail/lidplipfigoldfaeaglmkkjphmdncama


    http://samuelcazelli.blogspot.com/

    quarta-feira, 13 de junho de 2012 13:09
  • Samuel, fiz o download do Chrome e ao acessar a aplicação aquilo que estava alinhado no Internet Explorer vem com um desalinhamento geral. Eu estou utilizando table, panel para construção do formulário. Qual seria a minha meu procedimento?
    quarta-feira, 13 de junho de 2012 13:31
  • Instala aquele plugin e dá uma olhada no tamanho da view state no momento que você tem esse problema de performace.

    http://samuelcazelli.blogspot.com/

    quarta-feira, 13 de junho de 2012 13:39
  • Samuel, desculpe mas não estou me localizando fiz o download do link que me enviou e depois...
    quarta-feira, 13 de junho de 2012 13:50
  • Quando você debuga o seu banco é local?

    Se for local é normal ser quase instantaneo os comandos.


    http://www.linkedin.com/pub/murilo-kunze/44/191/455

    quarta-feira, 13 de junho de 2012 13:57
  • Sim, mas 1 minuto após publicado?

    Obrigado pelo retorno.

    quarta-feira, 13 de junho de 2012 14:01
  • Sim, mas 1 minuto após publicado?

    Obrigado pelo retorno.

    Utilizando e verificando na Ferramentas do desenvolvedor do Chrome, na verdade ao clicar no RadioButonList leva 1.6min.
    quarta-feira, 13 de junho de 2012 14:12
  • Onde é hospedado?

    Servidor da empresa mesmo?


    http://www.linkedin.com/pub/murilo-kunze/44/191/455

    quarta-feira, 13 de junho de 2012 14:14
  • http://www.kinghost.com.br Meu Plano é ASP MEGA
    quarta-feira, 13 de junho de 2012 14:18
  • Murilo, consultei o provedor, a resposta abaixo:

    É uma dificuldade na sua programação. Não prestamos suporte a
    programação de sites. Verifiquei seu servidor e não tem nenhuma dificuldade
    quanto ao uso dele.

    quarta-feira, 13 de junho de 2012 14:44
  • O tamanho e o tempo conforme muda-se a opção no radiobuttonlist:

    1,2 MG 24,09 segundos
    738,62 kB 24,88 segundos
    1,37 MG 29,17 segundos

    quarta-feira, 13 de junho de 2012 16:34
  • Esse é o tamanho da view state ou da página toda?

    http://samuelcazelli.blogspot.com/

    quarta-feira, 13 de junho de 2012 16:37
  • a página está com 8,57 KB.

    quarta-feira, 13 de junho de 2012 16:43
  • a página está com 8,57 KB.


    Ao clicar o RadioButtonList: 1,23MG e 55,52 segundos. 
    quarta-feira, 13 de junho de 2012 16:45
  • Não entendi, como a página está com  8,57 KB? E os valores que você postou lá em cima?

    Se for da view state que estiver com 1 mb,  vc vai ter que fazer mudanças porque 1 mega de ViewState é muita coisa.

    A cada postback o usuário vai ter que fazer o upload dessa ViewState, o que acaba sendo bem custoso. Principalmente porque a velocidade de upload sempre é bem menor do que a de upload.


    http://samuelcazelli.blogspot.com/

    quarta-feira, 13 de junho de 2012 16:45
  • Samuel tentei passar um trecho da pagina html, mas acho que deu problema. A pagina tem um menu e o RadioButtonList com tres opções para chamar a Multiview com tres views onde estão os formulários. Desculpe se não estou claro.

    @ Page Language="vb" AutoEventWireup="false" CodeBehind="CADASTRO.aspx.vb" Inherits="BRA_SIA.CADASTRO" %> <title></title><style type="text/css">.style22 { width: 100%; height: 30px; } .style7 { color: #808080; height: 23px; } .style25 { height: 24px; } .style6 { height: 23px; width: 937px; } .style39 { width: 481px; height: 22px; } .style64 { height: 23px; } .style67 { width: 344px; } .style71 { height: 23px; } .style89 { height: 23px; width: 273px; } .style91 { width: 1754px; height: 23px; } .style101 { height: 23px; width: 344px; } .style109 { width: 100%; } .style110 { color: #666666; } .style113 { height: 23px; width: 383px; } .style119 { } .style120 { } .style122 { width: 355px; height: 23px; } .style123 { width: 290px; height: 23px; } .style126 { width: 293px; height: 22px; } .style127 { height: 22px; } .style128 { width: 358px; height: 24px; } .style130 { height: 47px; } .style131 { width: 358px; height: 47px; } .style132 { width: 337px; height: 47px; } .style133 { width: 358px; height: 22px; } .style134 { width: 337px; height: 22px; } .style135 { height: 21px; } .style137 { height: 68px; } .style140 { width: 290px; } .style141 { width: 337px; height: 24px; } </style>

    <form id="form1" runat="server"><center>
    <asp:toolkitscriptmanager id="ToolkitScriptManager1" runat="server"></asp:toolkitscriptmanager> <asp:panel Width="950px" id="Panel1" runat="server"><asp:updatepanel id="UpdatePanel3" runat="server"><contenttemplate><asp:panel Width="930px" id="Panel17" runat="server">
    <asp:image Height="80px" ImageUrl="~/Imagens/EQUILIBRIO_logo_nova.jpg" Width="160px" id="Image1" runat="server"></asp:image> PRINCIPAL| CADASTRO | ATENDIMENTO| ENCAMINHAMENTO | RELATÓRIO | LOGIN <asp:image Height="80px" ImageUrl="~/Imagens/BRA_marca.jpg" Width="80px" id="Image2" runat="server"></asp:image>
     
     
    </asp:panel> </contenttemplate> </asp:updatepanel> </asp:panel>
    <asp:panel BackColor="#CCCCCC" GroupingText="CADASTRO" Height="69px" HorizontalAlign="Center" Width="940px" id="Panel2" runat="server" style="text-align:left;color:#000000;">
    <asp:updatepanel id="UpdatePanel4" runat="server"><contenttemplate><asp:radiobuttonlist AppendDataBoundItems="True" AutoPostBack="True" BackColor="White" Font-Size="Larger" RepeatDirection="Horizontal" ToolTip="Escolha uma opção para cadastro." Width="910px" id="rblCategoriaCadastro" runat="server"></asp:radiobuttonlist> </contenttemplate> </asp:updatepanel>
    </asp:panel>
    <asp:updatepanel id="UpdatePanel1" runat="server"><contenttemplate><asp:multiview id="mtvCadastro" runat="server"><asp:view id="vwEndereco" runat="server"><asp:panel BackColor="#CCCCCC" GroupingText="ENDEREÇO" Height="806px" HorizontalAlign="Left" Width="940px" id="Panel3" runat="server">
    <asp:updatepanel id="UpdatePanel2" runat="server"><contenttemplate>
    <asp:button Height="30px" Text="Inserir" ToolTip="Clique para inserir novo registro" Width="70px" id="btnInserirEnd" runat="server" style="font-style:italic;"><asp:button Height="30px" Text="Alterar" ToolTip="Clique para alterar ou complementar registro existente." Width="70px" id="btnAlterarEnd" runat="server" style="font-style:italic;"><asp:button Height="30px" Text="Excluir" ToolTip="Clique para excluir um registro." Width="70px" id="btnExcluirEnd" runat="server" style="font-style:italic;"></asp:button></asp:button></asp:button> <asp:button Height="30px" Text="Gravar" ToolTip="Clique para gravar as inserções, alterações ou exclusões." ValidationGroup="A" Width="70px" id="btnGravarEnd" runat="server" style="font-style:italic;"><asp:button Height="30px" Text="Cancelar" ToolTip="Clique para cancelar sua operação." Width="70px" id="btnCancelarEnd" runat="server" style="font-style:italic;"></asp:button></asp:button> <asp:textbox BackColor="#F4F4F4" ToolTip="Digite as letras iniciais para pesquisa." Width="280px" id="txtPesquisaEnd" runat="server" style="margin-right:0px;"></asp:textbox><asp:button Height="30px" Text="Pesquisar" ToolTip="Clique para pesquisar seus registros." Width="75px" id="btnPesquisarEnd" runat="server" style="font-style:italic;"></asp:button>
    </contenttemplate> </asp:updatepanel>
     
    Situação:<asp:requiredfieldvalidator ControlToValidate="rblSituacao" ErrorMessage="Situação" ForeColor="Red" ValidationGroup="A" id="RequiredFieldValidator8" runat="server">*</asp:requiredfieldvalidator> <asp:radiobuttonlist BackColor="White" Font-Size="Small" RepeatColumns="2" Width="287px" id="rblSituacao" runat="server" style="color:#333333;font-size:x-small;"></asp:radiobuttonlist> Tipo:<asp:requiredfieldvalidator ControlToValidate="rblTipo" EnableTheming="True" ErrorMessage="Tipo" ForeColor="Red" ValidationGroup="A" id="RequiredFieldValidator6" runat="server">*</asp:requiredfieldvalidator> <asp:radiobuttonlist BackColor="White" Font-Size="Small" RepeatColumns="3" Width="287px" id="rblTipo" runat="server" style="color:#333333;font-size:x-small;"></asp:radiobuttonlist> Logradouro:<asp:requiredfieldvalidator ControlToValidate="txtLogra" ErrorMessage="Logradouro" ForeColor="Red" ValidationGroup="A" id="RequiredFieldValidator7" runat="server">*</asp:requiredfieldvalidator> <asp:textbox Width="280px" id="txtLogra" runat="server"></asp:textbox>
     
    Número:<asp:requiredfieldvalidator ControlToValidate="txtNum" ErrorMessage="Número" ForeColor="Red" ValidationGroup="A" id="RequiredFieldValidator88" runat="server">*</asp:requiredfieldvalidator> <asp:textbox BackColor="White" Width="280px" id="txtNum" runat="server"></asp:textbox> Bairro ou Localidade:<asp:requiredfieldvalidator ControlToValidate="txtBairroLocal" ErrorMessage="Bairro ou Localidade" ForeColor="Red" ValidationGroup="A" id="RequiredFieldValidator5" runat="server">*</asp:requiredfieldvalidator>
    <asp:textbox BackColor="White" ValidationGroup="A" Width="280px" id="txtBairroLocal" runat="server"></asp:textbox>
    Telefone Residencial:<asp:textbox Width="280px" id="txtTelRes" runat="server"></asp:textbox>  
    Telefone Comercial:<asp:textbox BackColor="White" Width="280px" id="txtTelCom" runat="server"></asp:textbox> Telefone Celular:<asp:textbox BackColor="White" Width="280px" id="txtTelCel" runat="server"></asp:textbox> Estado:<asp:requiredfieldvalidator ControlToValidate="ddlUF" ErrorMessage="Estado" ForeColor="Red" ValidationGroup="A" id="RequiredFieldValidator89" runat="server">*</asp:requiredfieldvalidator> <asp:dropdownlist AppendDataBoundItems="True" AutoPostBack="True" BackColor="White" Width="285px" id="ddlUF" runat="server" style="color:#333333;"><asp:listitem></asp:listitem></asp:dropdownlist>
    Município:<asp:requiredfieldvalidator ControlToValidate="ddlMun" ErrorMessage="Município" ForeColor="Red" ValidationGroup="A" id="RequiredFieldValidator11" runat="server">*</asp:requiredfieldvalidator> <asp:dropdownlist AppendDataBoundItems="True" BackColor="White" Width="285px" id="ddlMun" runat="server" style="color:#333333;"><asp:listitem></asp:listitem></asp:dropdownlist> Email:<asp:textbox BackColor="White" Width="280px" id="txtEmail" runat="server"></asp:textbox> Home Page:<asp:textbox BackColor="White" Width="280px" id="txtHome" runat="server"></asp:textbox>  
    Nome para Contato:<asp:requiredfieldvalidator ControlToValidate="txtContato" ErrorMessage="Nome p/ contato" ForeColor="Red" ValidationGroup="A" id="RequiredFieldValidator90" runat="server">*</asp:requiredfieldvalidator> <asp:textbox BackColor="White" Width="280px" id="txtContato" runat="server"></asp:textbox> Ponto de Referência:<asp:textbox Width="280px" id="txtPontoRef" runat="server"></asp:textbox> Coordenada geográfica:<asp:textbox Width="280px" id="txtCoordGeo" runat="server"></asp:textbox>  
    Observação:<asp:textbox BackColor="White" TextMode="MultiLine" Width="910px" id="txtObservaEnd" runat="server"></asp:textbox><asp:label id="Label1" runat="server"></asp:label>  
    <asp:panel BackColor="#CCCCCC" GroupingText="Manutenção do registro de endereços" ToolTip="Clique em Pesquisar." Width="920px" id="Panel11" runat="server">
    <asp:label id="Label2" runat="server"></asp:label><asp:label id="Label16" runat="server"></asp:label>
    <asp:gridview CellPadding="4" ForeColor="#333333" GridLines="None" PageSize="5" ToolTip="Selecione o registro desejado para alteração ou exclusão." Width="543px" id="gvwEnd" runat="server"><alternatingrowstyle BackColor="White"><columns><asp:commandfield ButtonType="Button" SelectText="Selecionar" ShowSelectButton="True"></asp:commandfield> <footerstyle BackColor="#990000" Font-Bold="True" ForeColor="White"><headerstyle BackColor="#990000" Font-Bold="True" ForeColor="White"><pagerstyle BackColor="#FFCC66" ForeColor="#333333" HorizontalAlign="Center"><rowstyle BackColor="#FFFBD6" ForeColor="#333333"><selectedrowstyle BackColor="#FFCC66" Font-Bold="True" ForeColor="Navy"><sortedascendingcellstyle BackColor="#FDF5AC"><sortedascendingheaderstyle BackColor="#4D0000"><sorteddescendingcellstyle BackColor="#FCF6C0"><sorteddescendingheaderstyle BackColor="#820000"></sorteddescendingheaderstyle></sorteddescendingcellstyle></sortedascendingheaderstyle></sortedascendingcellstyle></selectedrowstyle></rowstyle></pagerstyle></headerstyle></footerstyle></columns></alternatingrowstyle></asp:gridview>
    </asp:panel>
     
    <asp:label Visible="False" id="modoEnd" runat="server"></asp:label><asp:label Visible="False" id="lblCodEnd" runat="server"></asp:label><asp:validationsummary ForeColor="Red" HeaderText="Campos com asterisco devem ser preenchidos" ShowMessageBox="True" ShowSummary="False" ValidationGroup="A" id="ValidationSummary1" runat="server"></asp:validationsummary>  
    </asp:panel> </asp:view> <asp:view id="vwPessoaJuridica" runat="server"><asp:tabcontainer ActiveTabIndex="0" AutoPostBack="True" Height="930px" Width="970px" id="TabContainerPJ" runat="server"><asp:tabpanel BackColor="White" ForeColor="Black" HeaderText="PESSOA JURÍDICA" id="TabPanel1" runat="server"><headertemplate>PESSOA JURÍDICA </headertemplate> <contenttemplate><asp:panel BackColor="#CCCCCC" GroupingText="PESSOA JURÍDICA" Height="850px" HorizontalAlign="Left" Width="940px" id="Panel4" runat="server">
    <asp:updatepanel id="UpdatePanel5" runat="server"><contenttemplate>
    <asp:button Height="30px" Text="Inserir" ToolTip="Clique para inserir novo registro" Width="70px" id="btnInserirPJ" runat="server" style="font-style:italic;"><asp:button Height="30px" Text="Alterar" ToolTip="Clique para alterar ou complementar registro existente." Width="70px" id="btnAlterarPJ" runat="server" style="font-style:italic;"><asp:button Height="30px" Text="Excluir" ToolTip="Clique para excluir um registro." Width="70px" id="btnExcluirPJ" runat="server" style="font-style:italic;"></asp:button></asp:button></asp:button> <asp:button Height="30px" Text="Gravar" ToolTip="Clique para gravar as inserções, alterações ou exclusões." ValidationGroup="B" Width="70px" id="btnGravarPJ" runat="server" style="font-style:italic;"><asp:button Height="30px" Text="Cancelar" ToolTip="Clique para cancelar sua operação." Width="70px" id="btnCancelarPJ" runat="server" style="font-style:italic;"></asp:button></asp:button> <asp:textbox BackColor="#F4F4F4" ToolTip="Digite as letras iniciais para pesquisa." Width="280px" id="txtPesquisaPJ" runat="server" style="margin-right:0px;"></asp:textbox><asp:button Height="30px" Text="Pesquisar" ToolTip="Clique para pesquisar seus registros." Width="75px" id="btnPesquisarPJ" runat="server" style="font-style:italic;"></asp:button>
    </contenttemplate> </asp:updatepanel>
    Endereço da Empresa (tipo,logradouro,numero e município):<asp:requiredfieldvalidator ControlToValidate="ddlPJEnd" ErrorMessage="Endereço" ForeColor="#FF3300" ValidationGroup="B" id="RequiredFieldValidator37" runat="server">* </asp:requiredfieldvalidator> <asp:dropdownlist AppendDataBoundItems="True" AutoPostBack="True" Height="22px" Width="915px" id="ddlPJEnd" runat="server"></asp:dropdownlist>
    </asp:panel></contenttemplate></asp:tabpanel></asp:tabcontainer></asp:view></asp:multiview></contenttemplate></asp:updatepanel>
    </center></form>
    quarta-feira, 13 de junho de 2012 16:59
  • Se realmente problema de ViewState muito grande, você pode seguir o seguinte exemplo para desabilita-la sem ter problemas com os eventos.

    ASPX:

            <asp:DropDownList ID="ddlTeste" runat="server" AutoPostBack="True" EnableViewState="False">
            </asp:DropDownList>

    VB:

     Protected Sub Page_Init(sender As Object, e As System.EventArgs) Handles Me.Init
            PopuladDrop()
            If IsPostBack Then
                ddlTeste.SelectedValue = Request.Params(ddlTeste.ClientID.Replace("_", "$"))
            End If
        End Sub
    
    
        Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
    
    
        End Sub
    
        Private Sub PopuladDrop()
            ddlTeste.Items.Add(New ListItem("Teste 1"))
            ddlTeste.Items.Add(New ListItem("Teste 2"))
            ddlTeste.Items.Add(New ListItem("Teste 3"))
            ddlTeste.Items.Add(New ListItem("Teste 4"))
            ddlTeste.Items.Add(New ListItem("Teste 5"))
        End Sub
    
    
        Protected Sub ddlTeste_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles ddlTeste.SelectedIndexChanged
    
        End Sub


    http://samuelcazelli.blogspot.com/

    quarta-feira, 13 de junho de 2012 17:09
  • Samuel,

    em EnableViewState marco como false em todos os DropDownList, porém o PopuladDrop() são os municípios do Brasil teria que manter a conexão com o banco. Estou equivocado?

    quarta-feira, 13 de junho de 2012 17:25
  • Você teria que fazer isso nos controles justamente no controle que tiver mais informações. No caso o de municípios.

    Você seta o EnableViewState igual a False e faz o mesmo que está sendo feito no evento Page_Init. 


    http://samuelcazelli.blogspot.com/

    quarta-feira, 13 de junho de 2012 17:31
  • Samuel, o que teria que alterar no Page_Load?

    ''' <summary> ''' Load com o carregamento dos comandos de todas as Views ''' </summary> ''' <param name="sender"></param> ''' <param name="e"></param> ''' <remarks></remarks> Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load If Not IsPostBack Then desabilita() cargaCategoriaCadastro() Session.Add("DS", DSet) DSet = Session.Item("DS") btnInserirEnd.Enabled = False btnPesquisarEnd.Enabled = False txtPesquisaEnd.Enabled = False cargatipo() cargaSituacao() cargaUF() cargaMunicipio() btnInserirPJ.Enabled = False btnPesquisarPJ.Enabled = False txtPesquisaPJ.Enabled = False btnInserirUA.Enabled = False btnPesquisarUA.Enabled = False txtPesquisaUA.Enabled = False btnInserirUS.Enabled = False btnPesquisarUS.Enabled = False txtPesquisaUS.Enabled = False cargaCategPJ() cargaCodCNAE() cargaDenominaCNAE() cargaRazaoSocialUA() cargaRazaoSocialUS() cargaUAUS() btnInserirPF.Enabled = False btnPesquisarPF.Enabled = False txtPesquisaPF.Enabled = False btnInserirUsu.Enabled = False btnPesquisarUsu.Enabled = False txtPesquisaUsu.Enabled = False btnInserirUsu.Enabled = False btnPesquisarUsu.Enabled = False txtPesquisaUsu.Enabled = False cargaSexo() cargaEstadoCivil() cargaNumFil() cargaTipoSangue() cargaEscola() cargaVinculoEmprTrab() cargaRazaoSocialTrab() cargaRazaoSocialUsu() cargaUSTrab() cargaOcupaTrab() cargaOcupaUsu() cargaTempoOcupaTrab() cargaTempoOcupaUsu() cargaSitOcupTrab() cargaHistEmpreTrab() cargaHistEmpreUsu() cargaCurricTrab() cargaCurricUsu() cargaCondAtualUsu() cargaCondAtualTrab() End If End Sub


    quarta-feira, 13 de junho de 2012 18:14
  • Nada, no page load pelo que eu lembro nada.

    Só criar no page init mesmo.


    http://samuelcazelli.blogspot.com/

    quarta-feira, 13 de junho de 2012 18:20
  • Observando melhor...até os botões inserir, alterar, excluir estão patinando. Ao clicar no botão pesquisar que carrega um grid (1.24MB 1.1min), ao selecionar uma linha do grid para carregar os campos(1.24 MB 1.0min), ao clicar no botão alterar (1,24MB 1.1min) ao gravar(1,24 MB 56.95seg). Qualquer acesso ao banco de dados Access o processo esta engatinhando.

    Qual o caminho?


    • Editado Wilson Boris quarta-feira, 13 de junho de 2012 23:02
    quarta-feira, 13 de junho de 2012 22:41
  • O click do botão gravar em qualquer modo 1 minuto. O código do click do botão com o modo inserir. O que fazer?

    Protected Sub btnGravar_Click(sender As Object, e As EventArgs) Handles btnGravarEnd.Click
            If modoEnd.Text = "A" Then
                If Me.IsValid() Then
                    alterar()
                    desabilita()
                    modoEnd.Text = ""
                End If
            End If
            If modoEnd.Text = "I" Then
                If Me.IsValid() Then
                    inserir()
                    desabilita()
                End If
            End If
            If modoEnd.Text = "E" Then
                excluir()
                desabilita()
            End If
            modoEnd.Text = "X"
        End Sub
    
    Private Sub inserir()
            Dim conecte As New OleDbConnection
            conecte.ConnectionString = My.Settings.SIADSConecte
            Try
                conecte.Open()
            Catch ex As System.Data.OleDb.OleDbException
                If mtvCadastro.ActiveViewIndex = 0 Then
                    Label1.Text = "Erro de conexao com o Banco de Dados: " & ex.Message.ToString
                ElseIf mtvCadastro.ActiveViewIndex = 1 Then
                    If TabContainerPJ.ActiveTabIndex = 0 Then
                        Label3.Text = "Erro de conexao com o Banco de Dados: " & ex.Message.ToString
                    ElseIf TabContainerPJ.ActiveTabIndex = 1 Then
                        Label5.Text = "Erro de conexao com o Banco de Dados: " & ex.Message.ToString
                    ElseIf TabContainerPJ.ActiveTabIndex = 2 Then
                        Label7.Text = "Erro de conexao com o Banco de Dados: " & ex.Message.ToString
                    End If
                ElseIf mtvCadastro.ActiveViewIndex = 4 Then
                    If TabContainerPF.ActiveTabIndex = 0 Then
                        Label9.Text = "Erro de conexao com o Banco de Dados: " & ex.Message.ToString
                    ElseIf TabContainerPF.ActiveTabIndex = 1 Then
                        Label11.Text = "Erro de conexao com o Banco de Dados: " & ex.Message.ToString
                    End If
                End If
                Return
            End Try
            Dim selcom As New System.Data.OleDb.OleDbCommand
            selcom.Connection = conecte
            If mtvCadastro.ActiveViewIndex = 0 Then
                selcom.CommandText = "INSERT INTO tbCadEndereco ( categoriaCadastro,tipo,logradouro,numero,situacao,bairro,telRes,telCom,telCel,estado,municipio,email,homepage,nomecontato,pontoReferencia,observacoes)" & _
           " VALUES('" & rblCategoriaCadastro.Text & "','" & rblTipo.Text & "','" & txtLogra.Text & "','" & txtNum.Text & "','" & rblSituacao.Text & "','" & txtBairroLocal.Text & "','" & txtTelRes.Text & "','" & txtTelCom.Text & "','" & txtTelCel.Text & "','" & ddlUF.Text & "','" & ddlMun.Text & "','" & txtEmail.Text & "','" & txtHome.Text & "','" & txtContato.Text & "','" & txtPontoRef.Text & "','" & txtObservaEnd.Text & "')"
                Dim teste As Boolean
                Try
                    teste = selcom.ExecuteNonQuery
                Catch ex As System.Data.OleDb.OleDbException
                    Label16.Text = "Erro: " & ex.Message.ToString
                    Return
                End Try
                conecte.Close()
                Label2.Text = "Dados gravados com  sucesso"
            ElseIf mtvCadastro.ActiveViewIndex = 1 Then
                If TabContainerPJ.ActiveTabIndex = 0 Then
                    selcom.CommandText = "INSERT INTO tbCadPessoaJuridica (categoriaCadastro,categoriaPJ,dataCadastro,razaoSocial,nomeFant,socioProp,cpf,dataFundacao,cnpj,ie,dtInCont,dtTerCont,codCnae,codEndPJ,observacao)" & _
           " VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)"
                    selcom.Parameters.Clear()
                    selcom.Parameters.Add("@categoriaCadastro", OleDbType.VarChar, 100).Value = rblCategoriaCadastro.Text
                    selcom.Parameters.Add("@categoriaPJ", OleDbType.VarChar, 100).Value = rblCategoriaPJ.Text
                    selcom.Parameters.Add("@dataCadastro", OleDbType.VarChar, 100).Value = txtDataCadasPJ.Text
                    selcom.Parameters.Add("@razaoSocial", OleDbType.VarChar, 100).Value = txtRazao.Text
                    selcom.Parameters.Add("@nomeFant", OleDbType.VarChar, 100).Value = txtFantasia.Text
                    selcom.Parameters.Add("@socioProp", OleDbType.VarChar, 100).Value = txtSocio.Text
                    selcom.Parameters.Add("@cpf", OleDbType.VarChar, 100).Value = txtCPFsocio.Text
                    selcom.Parameters.Add("@dataFundacao", OleDbType.VarChar, 100).Value = txtDataFunda.Text
                    selcom.Parameters.Add("@cnpj", OleDbType.VarChar, 100).Value = txtCNPJ.Text
                    selcom.Parameters.Add("@ie", OleDbType.VarChar, 100).Value = txtIE.Text
                    selcom.Parameters.Add("@dtInCont", OleDbType.VarChar, 100).Value = txtDataIniContrato.Text
                    selcom.Parameters.Add("@dtTerCont", OleDbType.VarChar, 100).Value = txtDataFinalContrato.Text
                    selcom.Parameters.Add("@codCnae", OleDbType.VarChar, 100).Value = ddlCNAE.Text
                    selcom.Parameters.Add("@codEndPJ", OleDbType.VarChar, 100).Value = lblCodEndPJ.Text
                    selcom.Parameters.Add("@observacao", OleDbType.VarChar, 100).Value = txtObservaPJ.Text
                    Dim teste As Boolean
                    Try
                        teste = selcom.ExecuteNonQuery
                    Catch ex As System.Data.OleDb.OleDbException
                        Label17.Text = "Erro: " & ex.Message.ToString
                        Return
                    End Try
                    conecte.Close()
                    Label4.Text = "Dados gravados com sucesso"
                ElseIf TabContainerPJ.ActiveTabIndex = 1 Then
                    selcom.CommandText = "INSERT INTO tbCadUnidadesAdministrativas (categoriaCadastro,nomeEmpresa,descricao,codEndUA,observacao)" & _
                    " VALUES(?,?,?,?,?)"
                    selcom.Parameters.Clear()
                    selcom.Parameters.Add("@categoriaCadastro", OleDbType.VarChar, 100).Value = rblCategoriaCadastro.Text
                    selcom.Parameters.Add("@nomeEmpresa", OleDbType.VarChar, 100).Value = ddlNomeEmpresaUA.Text
                    selcom.Parameters.Add("@descricao", OleDbType.VarChar, 100).Value = txtNomeUA.Text
                    selcom.Parameters.Add("@codEndUA", OleDbType.VarChar, 100).Value = lblCodEndUA.Text
                    selcom.Parameters.Add("@observacao", OleDbType.VarChar, 100).Value = txtObservaUA.Text
                    Dim teste As Boolean
                    Try
                        teste = selcom.ExecuteNonQuery
                    Catch ex As System.Data.OleDb.OleDbException
                        Label18.Text = "Erro: " & ex.Message.ToString
                        Return
                    End Try
                    conecte.Close()
                    Label6.Text = "Dados gravados com sucesso"
                ElseIf TabContainerPJ.ActiveTabIndex = 2 Then
                    selcom.CommandText = "INSERT INTO tbCadUnidadesdeServicos (categoriaCadastro,nomeEmpresa,unidade_administrativa,descricao,codEndUS,observacao)" & _
                 " VALUES(?,?,?,?,?,?)"
                    selcom.Parameters.Clear()
                    selcom.Parameters.Add("@categoriaCadastro", OleDbType.VarChar, 100).Value = rblCategoriaCadastro.Text
                    selcom.Parameters.Add("@nomeEmpresa", OleDbType.VarChar, 100).Value = ddlNomeEmpresaUS.Text
                    selcom.Parameters.Add("@unidade_administrativa", OleDbType.VarChar, 100).Value = ddlUnidAdmUS.Text
                    selcom.Parameters.Add("@descricao", OleDbType.VarChar, 100).Value = txtNomeUS.Text
                    selcom.Parameters.Add("@codEndUS", OleDbType.VarChar, 100).Value = lblCodEndUS.Text
                    selcom.Parameters.Add("@observacao", OleDbType.VarChar, 100).Value = txtObservaUS.Text
                    Dim teste As Boolean
                    Try
                        teste = selcom.ExecuteNonQuery
                    Catch ex As System.Data.OleDb.OleDbException
                        Label19.Text = "Erro: " & ex.Message.ToString
                        Return
                    End Try
                    conecte.Close()
                    Label8.Text = "Dados gravados com sucesso"
                End If
            ElseIf mtvCadastro.ActiveViewIndex = 4 Then
                If TabContainerPF.ActiveTabIndex = 0 Then
                    selcom.CommandText = "INSERT INTO tbCadPessoaFisica (CategoriaCadastro,DataCadastro,Nome,sobrenome,Sexo,nomeMae,nomePai,estadoCivil,numeroFilhos,dataNascimento,CPF,tipoSangue,escolaridade,especializacao,codEndPF,observacao)" & _
             " VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)"
                    selcom.Parameters.Clear()
                    selcom.Parameters.Add("@CategoriaCadastro", OleDbType.VarChar, 100).Value = rblCategoriaCadastro.Text
                    selcom.Parameters.Add("@dataCadastro", OleDbType.VarChar, 100).Value = txtDataCadastroPF.Text
                    selcom.Parameters.Add("@Nome", OleDbType.VarChar, 100).Value = txtNome.Text
                    selcom.Parameters.Add("@sobrenome", OleDbType.VarChar, 100).Value = txtSobrenome.Text
                    selcom.Parameters.Add("@Sexo", OleDbType.VarChar, 100).Value = rblSexo.Text
                    selcom.Parameters.Add("@nomeMae", OleDbType.VarChar, 100).Value = txtNomeMae.Text
                    selcom.Parameters.Add("@nomePai", OleDbType.VarChar, 100).Value = txtNomePai.Text
                    selcom.Parameters.Add("@estadoCivil", OleDbType.VarChar, 100).Value = rblEstadoCivil.Text
                    selcom.Parameters.Add("@numeroFilhos", OleDbType.VarChar, 100).Value = rblNumeroFilhos.Text
                    selcom.Parameters.Add("@dataNascimento", OleDbType.VarChar, 100).Value = txtDataNascimento.Text
                    selcom.Parameters.Add("@CPF", OleDbType.VarChar, 100).Value = txtCPF.Text
                    selcom.Parameters.Add("@tipoSangue", OleDbType.VarChar, 100).Value = rblTipoSangue.Text
                    selcom.Parameters.Add("@escolaridade", OleDbType.VarChar, 100).Value = ddlEscolaridade.Text
                    selcom.Parameters.Add("@especializacao", OleDbType.VarChar, 150).Value = txtEspecialidade.Text
                    selcom.Parameters.Add("@codEndPF", OleDbType.VarChar, 100).Value = lblCodEndPF.Text
                    selcom.Parameters.Add("@observacao", OleDbType.VarChar, 500).Value = txtObservaPF.Text
                    Dim teste As Boolean
                    Try
                        teste = selcom.ExecuteNonQuery
                    Catch ex As System.Data.OleDb.OleDbException
                        Label20.Text = "Erro: " & ex.Message.ToString
                        Return
                    End Try
                    conecte.Close()
                    Label10.Text = "Dados gravados com sucesso"
                ElseIf TabContainerPF.ActiveTabIndex = 1 Then
                    selcom.CommandText = "INSERT INTO tbCadPessoaFisicaTrab (categoriaCadastro,nome,rg,orgaoExpedidor,dataEmissao,conselhodeClasse,numConsClasse,carteiraTrabalho,razaosocial,dataAdmissao,vinculoEmpregaticio,descricaoUS,descricaoOcupacao,tempoOcupacaoAtual,situacaoOcupacao,historicoEmpregaticio,curriculo,condicaoAtual,codPFTrab,observacao)" & _
         " VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)"
                    selcom.Parameters.Clear()
                    selcom.Parameters.Add("@categoriaCadastro", OleDbType.VarChar, 100).Value = rblCategoriaCadastro.Text
                    selcom.Parameters.Add("@nome", OleDbType.VarChar, 100).Value = ddlNomeTrab.SelectedItem.Text
                    selcom.Parameters.Add("@rg", OleDbType.VarChar, 100).Value = txtRGTrab.Text
                    selcom.Parameters.Add("@orgaoExpedidor", OleDbType.VarChar, 100).Value = txtOrgaoExpTrab.Text
                    selcom.Parameters.Add("@dataEmissao", OleDbType.VarChar, 100).Value = txtDataEmisTrab.Text
                    selcom.Parameters.Add("@conselhodeClasse", OleDbType.VarChar, 100).Value = txtConselhoClasseTrab.Text
                    selcom.Parameters.Add("@numConsClasse", OleDbType.VarChar, 100).Value = txtNumConsClasseTrab.Text
                    selcom.Parameters.Add("@carteiraTrabalho", OleDbType.VarChar, 100).Value = txtCartTrab.Text
                    selcom.Parameters.Add("@razaoSocial", OleDbType.VarChar, 100).Value = ddlRazaoSocialTrab.Text
                    selcom.Parameters.Add("@dataAdmissao", OleDbType.VarChar, 100).Value = txtDataAdmissaoTrab.Text
                    selcom.Parameters.Add("@vinculoEmpregaticio", OleDbType.VarChar, 100).Value = rblVinculoEmpregaTrab.Text
                    selcom.Parameters.Add("@descricaoUS", OleDbType.VarChar, 100).Value = ddlUnidadeServTrab.Text
                    selcom.Parameters.Add("@descricaoOcupacao", OleDbType.VarChar, 100).Value = ddlOcupacaoTrab.Text
                    selcom.Parameters.Add("@tempoOcupacaoAtual", OleDbType.VarChar, 100).Value = ddlTempoOcupacaoTrab.Text
                    selcom.Parameters.Add("@situacaoOcupacao", OleDbType.VarChar, 200).Value = rblSituacaoOcupaTrab.Text
                    selcom.Parameters.Add("@historicoEmpregaticio", OleDbType.VarChar, 100).Value = ddlHistoricoEmpregTrab.Text
                    selcom.Parameters.Add("@curriculo", OleDbType.VarChar, 100).Value = rblCurriculoTrab.Text
                    selcom.Parameters.Add("@condicaoAtual", OleDbType.VarChar, 100).Value = rblCondicaoAtualTrab.Text
                    selcom.Parameters.Add("@codPFTrab", OleDbType.VarChar, 100).Value = lblCodPFTrab.Text
                    selcom.Parameters.Add("@observacao", OleDbType.VarChar, 500).Value = txtObservaTrab.Text
                    Dim teste As Boolean
                    Try
                        teste = selcom.ExecuteNonQuery
                    Catch ex As System.Data.OleDb.OleDbException
                        Label21.Text = "Erro: " & ex.Message.ToString
                        Return
                    End Try
                    conecte.Close()
                    Label12.Text = "Dados gravados com sucesso"
                ElseIf TabContainerPF.ActiveTabIndex = 2 Then
                    selcom.CommandText = "INSERT INTO tbCadPessoaFisicaUsu (categoriaCadastro,nome,rg,orgaoExpedidor,dataEmissao,conselhodeClasse,numConsClasse,razaoSocial,descricaoOcupacao,tempoOcupacaoAtual,historicoEmpregaticio,curriculo,condicaoAtual,codPFUsu,observacao)" & _
        " VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)"
                    selcom.Parameters.Clear()
                    selcom.Parameters.Add("@categoriaCadastro", OleDbType.VarChar, 100).Value = rblCategoriaCadastro.Text
                    selcom.Parameters.Add("@nome", OleDbType.VarChar, 100).Value = ddlNomeUsu.SelectedItem.Text
                    selcom.Parameters.Add("@rg", OleDbType.VarChar, 100).Value = txtRGUsu.Text
                    selcom.Parameters.Add("@orgaoExpedidor", OleDbType.VarChar, 100).Value = txtOrgaoExpUsu.Text
                    selcom.Parameters.Add("@dataEmissao", OleDbType.VarChar, 100).Value = txtDataEmisUsu.Text
                    selcom.Parameters.Add("@conselhodeClasse", OleDbType.VarChar, 100).Value = txtConselhoClasseUsu.Text
                    selcom.Parameters.Add("@numConsClasse", OleDbType.VarChar, 100).Value = txtNumConsClasseUsu.Text
                    selcom.Parameters.Add("@razaoSocial", OleDbType.VarChar, 100).Value = ddlRazaoSocialUsu.Text
                    selcom.Parameters.Add("@descricaoOcupacao", OleDbType.VarChar, 100).Value = ddlOcupacaoUsu.Text
                    selcom.Parameters.Add("@tempoOcupacaoAtual", OleDbType.VarChar, 100).Value = ddlTempoOcupacaoUsu.Text
                    selcom.Parameters.Add("@historicoEmpregaticio", OleDbType.VarChar, 100).Value = ddlHistoricoEmpregUsu.Text
                    selcom.Parameters.Add("@curriculo", OleDbType.VarChar, 100).Value = rblCurriculoUsu.Text
                    selcom.Parameters.Add("@condicaoAtual", OleDbType.VarChar, 100).Value = rblCondicaoAtualUsu.Text
                    selcom.Parameters.Add("@codPFUsu", OleDbType.VarChar, 100).Value = lblCodPFUsu.Text
                    selcom.Parameters.Add("@observacao", OleDbType.VarChar, 500).Value = txtObservaUsu.Text
                    Dim teste As Boolean
                    Try
                        teste = selcom.ExecuteNonQuery
                    Catch ex As System.Data.OleDb.OleDbException
                        Label22.Text = "Erro: " & ex.Message.ToString
                        Return
                    End Try
                    conecte.Close()
                    Label14.Text = "Dados gravados com sucesso"
                End If
            End If
            rblCategoriaCadastro.Focus()
            cargaGRID()
        End Sub

    quinta-feira, 14 de junho de 2012 16:25
  • O que falaram é o que mais ocorre, problema com o tamanho de view state. Local fica uma maravilha, já que a transferência dos dados é no próprio micro, agora quando publica, para trafegar tantos dados entre computadores pela internet, a página fica uma carroça.

    Uma vez fui fazer um serviço de tunning em um site que demorava dois minutos o carregamento do grid paginado, e a cada clique para mudar de página, eram mais dois minutos perdidos. Mudei a estratégia de leitura de dados e principalmente a forma de armazenamento, tirei tudo que era armazenado no ViewState. O carregamento e a mudança de páginas caíram para menos de 2 segundos.

    Então vasculhe na sua página o que está sendo armazenado no ViewState. Acredito que isto é a razão da lentidão. Tente armazenar os dados na Session, mas lembre-se sempre de dar manutenção nela, apagando o que não é mais de interesse, para não sobrecarregar a memória do servidor e toda a sua aplicação ficar lenta.


    Luís Fernando Vendrame

    quinta-feira, 14 de junho de 2012 16:57
  • Luis, não sei nem como te agradecer, pois isso esta me preocupando muito. Eu usei as ferramentas do desenvolvedor no Chrome para verificar size e time, mas sou iniciante nisso, voce saberia indicar algo para aprofundar esse conhecimento do que está sendo armazenado no ViewState? Valeu amigão.
    quinta-feira, 14 de junho de 2012 20:51
  • Para ver individualmente o quando de viewstate cada controle está gastando, você pode ir na tag Page da sua página e colocar Trace="true".

    Desta forma:http://msdn.microsoft.com/en-us/library/94c55d08.aspx

    Dai onde estiver escrito "Árvore de Controle" existe uma coluna "Tamanho em Bytes de ViewState (excluindo filhos)"


    quinta-feira, 14 de junho de 2012 21:09