none
Site desenvolvido em ASP.NET C# com conexão MySql com problema no Web.Config RRS feed

  • Pergunta

  • Boa tarde,

    Galera desenvolvi a poucos meses atrás um site na plataforma Microsoft Visual Studio 2010, C# com conexão MySql só que quando envio os arquivos para o FireZilla os mesmos deveriam fazer com que a página do meu site abrisse corretamente, mas acaba dando erro no Web.Config.

    1. Fiz o Pubish;

    2. Criei a Default.aspx;

    3. Coloquei as pastas  (imagens, css, scripts) dentro do WWW;

    4. Configurei o Web.Config para ele ressaltar uma página erro.htm, mas infelismente não obtive sucesso algum.

    O Banco de Dados já tá criado no site que contratei. Já fiz as devidas configurações no Web.Config

    <connectionStrings>
        <add name="localhost"
         connectionString="Persist Security Info=False; User ID=brasiliansport; Password=*****; Initial Catalog=brasiliansport; Server=http://mysql.brasiliansport.com"
        providerName="MySql.Data.MySqlClient"/>
      </connectionStrings>

    Sem resultados positivos.

    Tentei colocar no Web.Config

    <httpProtocol>
          <customHeaders>
            <clear />
            <add name="X-UA-Compatible" value="IE=EmulateIE7" />
          </customHeaders>
        </httpProtocol>
         <modules runAllManagedModulesForAllRequests="true"/>
      </system.webServer>

    Não resultou em nada.

    A equipe de suporte do site me enviou o seguinte e-mail:

    Olha Leonardo que a equipe de suporte me argumentou:

    • Olá Francielho, O seu site estaria abrindo, mas estaria com um erro na programação do mesmo o qual seria adequado efetuar liberação da exibição via browser do erro no web.config

    • Veja a indicação: Server Error in '/' Application. Runtime Error Description: An application error occurred on the server. The current custom error settings for this application prevent the details of the application error from being viewed remotely (for security reasons). It could, however, be viewed by browsers running on the local server machine.

    • Details: To enable the details of this specific error message to be viewable on remote machines, please create a <customErrors> tag within a "web.config" configuration file located in the root directory of the current web application. This <customErrors> tag should then have its "mode" attribute set to "Off". <!-- Web.Config Configuration File --> <configuration> <system.web> <customErrors mode="Off"/> </system.web> </configuration> Notes: The current error page you are seeing can be replaced by a custom error page by modifying the "defaultRedirect" attribute of the application's <customErrors> configuration tag to point to a custom error page URL. <!-- Web.Config Configuration File --> <configuration> <system.web> <customErrors mode="RemoteOnly" defaultRedirect="mycustompage.htm"/> </system.web> </configuration>

    Não sei o que o que fazer.

    Alguém pode me ajudar?

    segunda-feira, 29 de outubro de 2012 17:19

Todas as Respostas

  • Olá .

    Por favor, coloque o codigo do seu web.config para eu dar uma analisada.

    Abraços.


    Washington Luíz | MCP, MCTS
    O Senhor é minha força e somente Nele confio.

    segunda-feira, 29 de outubro de 2012 17:35
  • Olha ele aqui Washigton

    <?xml version="1.0"?>

    <!--
      For more information on how to configure your ASP.NET application, please visit
      http://go.microsoft.com/fwlink/?LinkId=169433
      -->

    <configuration>
      <connectionStrings>
        <add name="localhost"
         connectionString="Persist Security Info=False; User ID=brasiliansport; Password=*****; Initial Catalog=brasiliansport; Server=http://mysql.brasiliansport.com"
        providerName="MySql.Data.MySqlClient"/>
      </connectionStrings>
     
      <system.web>
        <customErrors mode="On"/>
        <compilation debug="true" targetFramework="4.0" />
        <membership>
          <providers>
            <clear/>
            <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="ApplicationServices"
                 enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false"
                 maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10"
                 applicationName="/" />
          </providers>
        </membership>

        <profile>
          <providers>
            <clear/>
            <add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applicationName="/"/>
          </providers>
        </profile>

        <roleManager enabled="false">
          <providers>
            <clear/>
            <add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" connectionStringName="ApplicationServices" applicationName="/" />
            <add name="AspNetWindowsTokenRoleProvider" type="System.Web.Security.WindowsTokenRoleProvider" applicationName="/" />
          </providers>
        </roleManager>

      </system.web>

      <system.webServer>
        <httpProtocol>
          <customHeaders>
            <clear />
            <add name="X-UA-Compatible" value="IE=EmulateIE7" />
          </customHeaders>
        </httpProtocol>
         <modules runAllManagedModulesForAllRequests="true"/>
      </system.webServer>
    </configuration>

    segunda-feira, 29 de outubro de 2012 17:38
  • Para voce ver os erros, altere a propriedade customErros para Off

    <customErrors mode="Off"/>

    Voce consegue conectar em seu MySQL pelo endereço "http://mysql.brasiliansport.com"

    Outra dúvida, alterando o endereço do seu mySQL para "mysql.brasilianport.com" (sem o http), voce consegue conectar pela sua aplicação?

    Abraços.


    Washington Luíz | MCP, MCTS
    O Senhor é minha força e somente Nele confio.

    segunda-feira, 29 de outubro de 2012 17:42
  • Washigton vou alterar pra ver o resultado.

    Eu consigo pelo "http://mysql.brasiliansport.com"..Porque?

    segunda-feira, 29 de outubro de 2012 17:49
  • Ok, mas voce consegue se conectar pela sua aplicação? Não digo entrando pelo endereço http://mysql.brasiliansport.com, mas colocando esse endereço na sua string de conexão.

    Sugiro que voce faça um teste simples em uma outra página separada. Se conectar, então o problema pode não ser na conexão com o banco mas com algum objeto no banco.

    Vi que voce está usando o Profile do .NET. Voce subiu as tabelas geradas pelo Profile?

    Abraços.


    Washington Luíz | MCP, MCTS
    O Senhor é minha força e somente Nele confio.

    segunda-feira, 29 de outubro de 2012 17:57
  • Olá. Agora está mais claro o erro em sua aplicação. Veja o erro:

    Object reference not set to an instance of an object.
    
    F:\BrasilianSport2014\BrasilianSport2014\Principal.Master.cs:39

    Dá uma olhada nesta linha da sua MasterPage e ve o que ela faz... (conecta no banco, algum tratamento, etc..)

    Abraços.


    Washington Luíz | MCP, MCTS
    O Senhor é minha força e somente Nele confio.

    segunda-feira, 29 de outubro de 2012 17:59
  • Valew, vou dar uma configurada e qualquer coisa volto, ok... Mestre rrssrsr
    segunda-feira, 29 de outubro de 2012 18:04
  • hehehe... Tranquilo.

    Qualquer dúvida, estamos ai.

    Abraços.


    Washington Luíz | MCP, MCTS
    O Senhor é minha força e somente Nele confio.

    segunda-feira, 29 de outubro de 2012 18:05
  • Vi que voce está usando o Profile do .NET. Voce subiu as tabelas geradas pelo Profile?

    Washington sou novato em programação Web, principalmente em Asp.Net, o que é Profile?

    Desculpe-me por ser leigo.

    segunda-feira, 29 de outubro de 2012 18:07
  • Na Principal.Master

    É o cabeçalho:

    <div class="style79" style="background-color: #000000"> Esta é a linha...

                <%-- Este é o banner do site --%>

                    <div class="banner">
                        <asp:Image ID="Image1" runat="server" ImageUrl="~/Imagens/Cabecalho/img_banner.png"
                            Width="995px" CssClass="style32" />
                    </div>
                
                   <%--  Este é o menu horizontal do site --%>

                    <div class="clear hideSkiplink" style="width: 999px; height: 38px;">
                                    <asp:ImageButton ID="btn_inicio" runat="server" CssClass="style327_botao"
                                        Height="29px" ImageUrl="~/Imagens/Botão/img_paginaInicial.png"
                                        Width="128px" PostBackUrl="~/default.aspx"
                                        ToolTip="Voltar ao início" />
                                    <asp:ImageButton ID="ImageButton117" runat="server" CssClass="style327_botao"
                                        Height="30px" ImageUrl="~/Imagens/Botão/img_estádios.png"
                                        PostBackUrl="~/estadios.aspx" ToolTip="Confira a Galeria da Copa"
                                        Width="128px" />
                                    <asp:ImageButton ID="btn_cronograma" runat="server" CssClass="style327_botao"
                                        Height="29px" ImageUrl="~/Imagens/Botão/img_cronograma.png" Width="128px"
                                        PostBackUrl="~/cronometro.aspx"
                                        ToolTip="Confira o cronograma" />
                                    <asp:ImageButton ID="btn_publicidade" runat="server" CssClass="style327_botao"
                                        Height="29px" ImageUrl="~/Imagens/Botão/bt_publicidade.png" Width="128px"
                                        PostBackUrl="~/publicidade.aspx"
                                        ToolTip="Confira as novidades" />
                    </div>

    Na Principal.Master.cs

    protected void Page_Unload(object sender, EventArgs e)
            {
                //Última ação a ser executada no encerramento da aplicação
                //Fechar a conexão
                objConexao.Close(); Esta é a linha...
                objConexao.Dispose();

            }

    segunda-feira, 29 de outubro de 2012 18:12
  • Washington o que você me sugere?
    segunda-feira, 29 de outubro de 2012 18:13
  • Sem problemas. Veja um trecho da explicação do Macoratti para o Profile:

    "A ASP.NET 2.0 apresenta o objeto Profile que tem o objetivo de armazenar informações do usuário e funciona de forma semelhante ao objeto Session . Mas qual a vantagem ?

    Ao usar o objeto Profile para armazenar as informações do contexto do usuário elas se mantêm persistente mesmo depois que você fecha o Browser além de ser fortemente tipado oferecendo o recurso IntelliSense que lhe permite visualizar as propriedades evitando erros na codificação.

    Podemos usar os recursos do objeto Profile para armazenar informações de usuários autenticados e também de usuários anônimos, identificar cada usuário específico e retornar as informações persistida de uma maneira simples e elegante."

    Leia o artigo na íntegra para que voce possa ficar mais familirializado com os Profiles:

    ASP.NET 2.0 - Apresentando o objeto Profile

    ASP .NET - Usando MemberShip, roles e Profiles com o Microsoft Access


    Washington Luíz | MCP, MCTS
    O Senhor é minha força e somente Nele confio.

    segunda-feira, 29 de outubro de 2012 18:15
  • Você acha que esse pode ser o erro, eu não ter subido as tabelas? Essas tabelas são as bin, é? Eu coloquei todas no FireZilla.

    Em relação às linhas correspondentes aos itens que citei anteriormente, posso mudar algo para iliminar os erros?

    segunda-feira, 29 de outubro de 2012 18:20
  • Washington  eu dei uma breve lida nos tutoriais e ficou a pergunta?

    Posso então deletar essa parte que se refere aos Profiles?

    Será que são eles que estão ocasionando o erro?

    segunda-feira, 29 de outubro de 2012 18:23
  • Olá. Analisei o codigo que voce postou da sua MasterPage em outro tópico.

    o erro está acontecendo no momento de fechar os objetos de conexão. Se eles estiverem nulos, ao tentar usar o método Close, será gerada a exceção que está sendo exibida no site.

    Altere o seu código para o codigo abaixo:

    protected void Page_Unload(object sender, EventArgs e)
    {
        //Última ação a ser executada no encerramento da aplicação
        //Fechar a conexão
    
        if (objConexao != null && objConexao.State != System.Data.ConnectionState.Closed)
        {
            objConexao.Close();
            objConexao.Dispose();
        }
    
        if (objConectacao != null && objConectacao.State != System.Data.ConnectionState.Closed)
        {
            //Última ação a ser executada no encerramento da aplicação
            //Fechar a conexão
            objConectacao.Close();
            objConectacao.Dispose();
        }
    }

    Abraços.


    Washington Luíz | MCP, MCTS
    O Senhor é minha força e somente Nele confio.


    • Editado Washington segunda-feira, 29 de outubro de 2012 18:32 acerto codigo
    segunda-feira, 29 de outubro de 2012 18:27
  • Vou testar agora, Mestre....
    segunda-feira, 29 de outubro de 2012 18:32
  • Mesmo assim amigo não deu certo!

    terça-feira, 30 de outubro de 2012 11:25
  • Olá. Qual o erro que está apresentando? Se o seu site estiver redirecionando para uma pagina de erro customizada, será necessário que nesta página voce recupere o erro ocorrido e a exiba na tela.

    Ou desabilite o redirecionamento para as páginas de erro para que o mesmo possa ser exibido na tela.

    Abraços.


    Washington Luíz | MCP, MCTS
    O Senhor é minha força e somente Nele confio.

    terça-feira, 30 de outubro de 2012 11:29
  • Amigão, já tô quase entregando os pontos... A página Personalizada fui eu que criei para evitar os constrangiementos de quem acessar o site não se deparar com os erros... Vou alterar para você verificar os erros, ok!
    terça-feira, 30 de outubro de 2012 11:37
  • Já alterei, ok.
    terça-feira, 30 de outubro de 2012 11:39
  • Esse é o erro:

    Line 1:  <%@ Page Title="" Language="C#" MasterPageFile="~/Principal.Master" AutoEventWireup="true" CodeBehind="default.aspx.cs" Inherits="BrasilianSport2014._default1" %>
    Line 2:  <asp:Content ID="Content1" ContentPlaceHolderID="HeadContent" runat="server">
    Line 3:          <title>Brasilian Sport - Página Inicial</title>
    terça-feira, 30 de outubro de 2012 11:48
  • Pessoal muito obrigado pelas dicas, mas acabei conseguindo hospedar o meu site é o brasiliansport, valew por tudo hein...

    Fernando.Garcia me ajudou pelo faceboook....

    quinta-feira, 1 de novembro de 2012 14:06