none
ASP.NET MVC HTML Helper RRS feed

Respostas

  • Vamos lá...

    Algumas razões que eu acho válidas...

    1) Evitar erros de sintaxe. O compilador vai te ajudar a não cometer nenhum erro.

    2) Esquecer de fechar corretamente as tags. Usando os "using", o problema tá resolvido

    3) Escrevendo seus próprios HTML Helper vc evita muito código HTML desnecessário dentro da view. Pode criar controles seus mesmo (que internamente utilize-se de outros HTML helper). 

    4) A View fica bem mais fácil de ler.

     

    Abraço,

    Eric

    segunda-feira, 26 de abril de 2010 10:17

Todas as Respostas

  • Fala César, blz.

    O uso do Helper é mais claro quando nos deparamos com uma situação semelhante a essa, imagine que que voce já criou um padrão de grid de dados para seu projeto, embutiu um javascript para poder sortir as colunas, ordernar e tal, mas voce cansou de criar na mão o nomes das colunas, vincular javascript, toda vez que precisa exibir dados em uma view, dae vem a ideia, eu podera criar um método extension para que eu possa deixar de escrever <tr> e <td>, repetir javascript e de quebra configurar em menos linhas quais colunas eu desejo mostrar e os seus nomes, e ae que entra a utilidade e facilidade que os helpers podem nos oferecer.

    Um exemplo disso é o Grid customizado, que podemos gerar com os Helpers do projeto MVC Contrib, de uma olhada, destaco a parte em que é renderizada uma partial view para uma celula mais complexa.

    <%
    =
    
    
     Html.Grid
    
    
    
    
    (
    
    
    
    
    Model)
    
    
    
    
    
    .Columns ( column => {
    column.For ( x => x.Id ) .Named ( "Person ID" ) ;
    column.For ( x => x.Name ) ;
    column.For ( x => x.Gender ) ;
    column.For ( x => x.DateOfBirth ) .Format ( "{0:d}" ) ;
    column.For ( "View Person" ) .Named ( "" ) .Partial ( "ViewPersonPartial" ) ; //Uso de Partial para celulas complexas
    } ) .RowStart ( row => string .Format ( "<tr{0}>" , row.IsAlternate ? "style=\" background-color: #CCDDCC\"" : "" ) )
    %>

    No link abaixo um video do site oficial do asp.net ensinando a criar seus próprios Helpers e em seguida o site que peguei o exemplo do Grid

     http://www.asp.net/learn/mvc-videos/video-402.aspx

     http://www.jeremyskinner.co.uk/2009/03/01/mvccontrib-grid-part-5-the-action-syntax/

     Desculpe o exemplo de código estar mal-formatado, não consegui dar um jeito nele.

    Valew espero ter ajudado.

    • Editado _Willian_ sábado, 24 de abril de 2010 16:16 código mal formatado
    sábado, 24 de abril de 2010 16:12
  • Vamos lá...

    Algumas razões que eu acho válidas...

    1) Evitar erros de sintaxe. O compilador vai te ajudar a não cometer nenhum erro.

    2) Esquecer de fechar corretamente as tags. Usando os "using", o problema tá resolvido

    3) Escrevendo seus próprios HTML Helper vc evita muito código HTML desnecessário dentro da view. Pode criar controles seus mesmo (que internamente utilize-se de outros HTML helper). 

    4) A View fica bem mais fácil de ler.

     

    Abraço,

    Eric

    segunda-feira, 26 de abril de 2010 10:17
  • Depende, penso que não seria nem produtivo nem agradável fazer uma dropdownlist ou checkboxlist no "braço", e sem intelisense. Também acho que suas views ficariam de difícil entendimento por causa da tag soup que isso geraria.

    Recomendo o uso do FluentHtml, assim voce pode criar controles HTML usando sintaxe lambda, você deixa seu código BEM menor(já que evita o Overload ____(inúmeras sobrecargas de métodos) dos HTML Helpers) e tem facilidade na criação até dos mais complicados controles.

     

    Espero ter ajudado.


    www.twitter.com/wirebane Se a resposta te ajudar, marque como útil.
    segunda-feira, 3 de maio de 2010 13:19