Foros del Web » Programación para mayores de 30 ;) » .NET »

Estructuras de codigo para ASP.NET

Estas en el tema de Estructuras de codigo para ASP.NET en el foro de .NET en Foros del Web. hola, lo que estoy buscando y quisiera encontrar es cual seria la estructura, o las diferentes estructuras recomendables para programar en ASP.NET, ejemplo: En PHP ...
  #1 (permalink)  
Antiguo 01/08/2005, 09:58
 
Fecha de Ingreso: julio-2005
Mensajes: 58
Antigüedad: 18 años, 9 meses
Puntos: 0
Estructuras de codigo para ASP.NET

hola, lo que estoy buscando y quisiera encontrar es cual seria la estructura, o las diferentes estructuras recomendables para programar en ASP.NET, ejemplo:

En PHP tengo esto:

index.php
<?
//Incluir librerias
//Ejecutar codigo
//Mandar escribir el HTML generado mediante un:
echo $html
?>

index.htm
<html>
<!--Solo codigo HTML, nada de PHP-->
</html>

el html lo manejo por separado, no se mezcla en el código principal...

pero en ASP.NET, como sería la mejor estructura, he visto muchas formas, pero en todas claro esta el html esta mezclado con el codigo, y uno depende de otro, entonces no me queda muy claro cual seria lo mejor, ademas quiero aprovechar todo el performance que ofrece, por lo cual no quisiera seguir los viejos metodos solo por contumbre...

ustedes que piensan ?, que pueden aconsejarme, como hacer la estructura, si alquien tiene un ejemplo donde no este el codigo, pero si un ejemplo de estructuras de codigo en ASP.NET, pues muchas gracias, he estado viendo el manual de la pagina oficial, los ejemplos, etc., pero no me aclaran cuales serian las mejores estructuras...

muchas gracias.
  #2 (permalink)  
Antiguo 01/08/2005, 10:20
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Lo mejor es que separes el html del code (codebehind)

para que al final todo tú código quede compilado en tu dll y obviamente un código compilado tiene mas performance que un código interpretado.

Aclaro que tambien tiene que ver el estilo en el que programes, si usas al máximo todo el concepto de POO , etc...
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #3 (permalink)  
Antiguo 01/08/2005, 10:43
 
Fecha de Ingreso: julio-2005
Mensajes: 58
Antigüedad: 18 años, 9 meses
Puntos: 0
gracias por responder, pero como lo logro si tengo esto:

Código HTML:
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>

<html>
   <head>
      <link rel="stylesheet"href="intro.css">
   </head>

   <script language="VB" runat=server>

       Sub SubmitBtn_Click(Sender As Object, E As EventArgs)

          Dim DS As DataSet
          Dim MyConnection As SqlConnection
          Dim MyCommand As SqlDataAdapter

          MyConnection = New SqlConnection("server=(local)\NetSDK;database=pubs;Trusted_Connection=yes")
          MyCommand = New SqlDataAdapter("select * from Titles where type='" + Category.SelectedItem.Value + "'", myConnection)

          DS = new DataSet()
          MyCommand.Fill(DS, "Titles")

          MyList.DataSource = DS.Tables("Titles").DefaultView
          MyList.DataBind()

       End Sub

   </script>

   <body>

       <center>

       <form action="intro9.aspx" method="post" runat="server">

           <asp:adrotator AdvertisementFile="ads.xml" BorderColor="black" BorderWidth=1 runat="server"/>

           <h3> Name: <asp:textbox id="Name" runat="server"/>

           Category:  <asp:dropdownlist id="Category" runat=server>
                         <asp:listitem >psychology</asp:listitem>
                         <asp:listitem >business</asp:listitem>
                         <asp:listitem >popular_comp</asp:listitem>
                      </asp:dropdownlist>
           </h3>

           <asp:button text="Lookup" OnClick="SubmitBtn_Click" runat="server"/>

           <p>

           <asp:datalist id="MyList" repeatcolumns="2" borderwidth="0" runat="server">

             <ItemTemplate>

                 <table>
                   <tr>

                     <td>
                         <img src='<%# DataBinder.Eval(Container.DataItem, "title_id", "/quickstart/aspplus/images/title-{0}.gif") %>'>
                     </td>

                     <td width=250 valign=top>

                         <b><%# DataBinder.Eval(Container.DataItem, "title") %></b>

                         <br><br>

                         Price: <%# DataBinder.Eval(Container.DataItem, "price", "${0}") %>
                     </td>

                   </tr>
                 </table>

             </ItemTemplate>

           </asp:datalist>

       </form>

       </center>

   </body>

</html> 
Es decir, yo tengo esto en mi estructura actual:

index.php
<?
//Incluir librerias
//Ejecutar codigo

//LEER EL ARCHIVO index.htm -->
html = LeerHtml(index.htm)

//REMPLAZAR EN EL LO QUE SE NECESITA -->
html = RemplazarHTML(html, elementos)

//Mandar escribir el HTML generado mediante un:
echo $html
?>

index.htm
<html>
<!--Solo codigo HTML, nada de PHP-->
</html>

Eso, como lo aplico si dentro del codigo de HTML tengo controles de ASP que tengo que poner ???

a eso me refiero, como puedo atacar esas estructuras de la mejor manera, por ejemplo Rook, como programas tu ?

eso me gustaria ejemplos de archivos ya creados, donde llamar includes, los include en lugar de funciones usaran clases, etc., esas son mis dudas.

gracias por todo

EDITANDO:

Lo que estas diciendo tu, es que tengo que tener todo en 1 solo archivo ?

es decir:

index.aspx

<%

//Codigo ASP.NET

%>
<html>

<!--Solo codigo HTML, nada de PHP-->

</html>

????????????, bueno, de lo que he leido, tambien me parece la mejor opcion, pero no hay forma de seguir haciendolo como lo hago ahorita ?

o bien, cual es la mejor extructura a partir de esa estructura ???,

como usar los includes ? jejejeje, existen los includes ? o son puras clases que tengo que tener compiladas antes ???, como compilo una clase ?

gracias rook, estas cosas son las que me apuran mas, como manejar la estructura, de los codigos ya ire aprendiendo poco a poco.

Última edición por AprendizNet; 01/08/2005 a las 10:48
  #4 (permalink)  
Antiguo 01/08/2005, 11:20
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
No tienes el VS Net ?? porque precisamente ese IDE permite separar tu code html del codebehind..

Porque por la estructura que manejas me imagino que estas usando webmatrix o algo por el estilo verdad ??

Si quieres separar tu code lo puedes hacer tambien desde tu notepad, o cualquier editor de texto, pero deberas indicar en las directivas en donde se encuentra el codebehind y despues usar comandos como vbc (para vb.net) para compilar tus archivos y crear la dll la verdad es una tarea algo tediosa , pero si quieres evitarte todo ese rollo puedes seguirlo haciendo todo sobre una página (que no es lo mejor al 100%) o conseguir el VS Net para ahorrarte tiempo y esfuerzo.

Ya depende de como lo quieras ir haciendo.
  #5 (permalink)  
Antiguo 01/08/2005, 11:50
 
Fecha de Ingreso: julio-2005
Mensajes: 58
Antigüedad: 18 años, 9 meses
Puntos: 0
si, estoy usando el webmatrix ahorita, no he conseguido el VB NET, pero entonces, tu lo tienes en 2 archivos separados, o en 1 ?

para php manejo en DW, pero son 2 archivos:

1. index.php (todo lo de php, no tiene nada de html)
2. index.htm (todo el html y javascript, css, etc, nada de codigo de PHP)
3. index.php lee index.htm y hace un "echo html;".

Entonces, en ASP.NET, puedo hacer lo mismo si uso VB net ? tener algo como:

1. index.aspx (todo el ASP sin nada de HTML)
2. index.htm (todo el html sin ASP.NET)
3. indes.aspx lee index.htm y hace un "write html"

???

Puedo seguir asi si uso vb net ?

gracias, oye rook, tal vez se vea muy atrevido, pero no tienes un ejemplo basico de eso?, de como manejas esa estructura tu ahorita ?

gracias.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:24.