none
Integração HTML e C# RRS feed

  • Pergunta

  • Pessoal eu sou desenvolvedor desktop ha muitos anos, mas acho que a WEB veio para ficar.

    Bem, eu montei uma página HTML muito bonita utilizando jQuery, um formulário bem feito. OK. Fiz também a parte de banco de dados, regras de negócio e tudo mais.

    Mas e como faço para juntar isto tudo? Se eu utilizar WebForm, perco o que fiz em HTML? Como faço o botão "Cadastrar" chamar a função "Cliente.Cadastrar(c: cliente)" que eu criei?

    quinta-feira, 15 de setembro de 2011 14:03

Respostas

  • Você precisa colocar o atributo runat="server" na sua asp:TextBox para que ela seja renderizada. Assim:

    <asp:TextBox ID="RazaoSocial" runat="server" name="RazaoSocial" type="text" class="" size="20" />

    • Marcado como Resposta Eduardo C. Rocha quinta-feira, 15 de setembro de 2011 18:01
    quinta-feira, 15 de setembro de 2011 16:49
  • Eduardo,

    No seu asp:Button, não precisa colocar type="submit". E ele ficou só um quadradinho porque está sem texto. Troque value="Cadastrar" por Text="Cadastrar" que ele vai funcionar certinho.

    Abs!

    • Marcado como Resposta Eduardo C. Rocha quinta-feira, 15 de setembro de 2011 19:15
    quinta-feira, 15 de setembro de 2011 18:11

Todas as Respostas

  • Eduardo,

    ASP.NET WebForms é um dos frameworks de desenvolvimento Web que existem para o .NET Framework.

    Como você já tem o formulário e a camada de negócios, é relativamente simples fazer as adaptações necessárias.

    Partindo de uma aplicação Web no Visual Studio, utilize a página que você já criou, alterando apenas os campos de entrada do formulário (botões, campos de texto etc.) pelos controles equivalentes do ASP.NET, para que assim eles possam ser lidos no servidor. Também é possível fazer com que os controles HTML sejam enviados para o servidor, mas creio que a primeira alternativa que expliquei seja mais simples.

    Nos métodos de tratamentos dos eventos da página, você chama os objetos da camada de negócio que você já criou.

    Recomendo a leitura do Training Kit da prova de certificação 70-562 para mais detalhes sobre ASP.NET.

    Espero ter ajudado!

    Abs!

    quinta-feira, 15 de setembro de 2011 14:16
  • Vinicius, como faço esta troca? Outras coisa, eu vi que quando crio um WebForm é criado também um "aspx.cs" e um "aspx.designer.cs" estes arquivos me parece fazer a leitura do HTML, eu preciso criar estes arquivos manualmente?
    quinta-feira, 15 de setembro de 2011 14:28
  • A primeira coisa é ter um projeto de aplicação Web no Visual Studio. Você já fez isso, né?

    O seu form HTML vai substituir TODO o conteúdo da página Default.aspx que o Visual Studio gera. Isso precisa ser feito para que o ASP.NET "compile" a página e renderize o HTML final no browser.

    Aqui eu vou mostrar apenas como substituir um botão da sua página. Para trocar outros controles, é um procedimento similar e não é nada que você não consiga fazer com um pouco de exploração da Toolbox de controles ASP.NET. Para visualizá-la, Ctrl+Alt+X no Visual Studio.

    Para o botão, imagino que você tenha feito algo similar ao abaixo:

    <input type="button" value="Enviar" />
    

    No ASP.NET, isso vai ser substituído por:

    <asp:Button ID="Button1" runat="server" Text="Enviar" onclick="Button1_Click" />
    

    Note que ele tem um atributo chamado OnClick. Esse atributo contém o método da página que será executado quando um POST for enviado ao servidor a partir desse botão.

    Onde fica esse código? No chamado code-behind da página. No caso, o arquivo se chama Default.aspx.cs. Aí é só colocar a chamada para sua regra de negócio, após fazer as validações da entrada e coisa e tal. No código da página, teremos:

    protected void Button1_Click(object sender, EventArgs e)
    {
        // Seu código aqui
    }
    
    

    Isso conclui a troca do botão HTML por um botão ASP.NET.

    Vale lembrar que isso é um procedimento BÁSICO, bem simples! Para funcionalidades mais complexas, recomendo estudar mais a fundo como funciona o ASP.NET e o que mais ele oferece.

    Espero que isso ajude!

    Abs!

    quinta-feira, 15 de setembro de 2011 14:52
  • Vinicius, abusando de sua boa vontade... Eu tenho o seguinte código

     

    <Form name="form" method="post" id="third" action="" class="niceform">
      <!-- Razao social -->
      <label for=""> <strong> <span class="blue"> * </span> Raz&atilde;o social </strong> </label>
      <asp:TextBox ID="RazaoSocial" name="RazaoSocial" type="text" class="" size="20" />

    quanto era INPUT o campo para digitar a RazaoSocial aparecia, quando coloquei asp:textbox parou de exibir o campo

    quinta-feira, 15 de setembro de 2011 15:13
  • Você precisa colocar o atributo runat="server" na sua asp:TextBox para que ela seja renderizada. Assim:

    <asp:TextBox ID="RazaoSocial" runat="server" name="RazaoSocial" type="text" class="" size="20" />

    • Marcado como Resposta Eduardo C. Rocha quinta-feira, 15 de setembro de 2011 18:01
    quinta-feira, 15 de setembro de 2011 16:49
  • Antes: <input type="submit" class="buttonSubmit" value="Cadastrar" href="#" />

    Depois: <asp:Button type="submit" id="btnCadastrar" class="buttonSubmit" runat="server" value="Cadastrar" onclick="CadastrarUsuario"/>


    Funcionou, meu único problema é que o botão não é como antes, ficou um quadradinho. Mas ai eu corro para ver o que pode ser feito.

    quinta-feira, 15 de setembro de 2011 18:01
  • Eduardo,

    No seu asp:Button, não precisa colocar type="submit". E ele ficou só um quadradinho porque está sem texto. Troque value="Cadastrar" por Text="Cadastrar" que ele vai funcionar certinho.

    Abs!

    • Marcado como Resposta Eduardo C. Rocha quinta-feira, 15 de setembro de 2011 19:15
    quinta-feira, 15 de setembro de 2011 18:11
  • Putz, e eu fiquei igual a um tarado vendo o que poderia ter ocorrido com o CSS...

    Valeu, resolveu boa parte de minhas dificuldades.

    Abraços

    quinta-feira, 15 de setembro de 2011 19:17