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

COmo crear funciones en Asp.Net?

Estas en el tema de COmo crear funciones en Asp.Net? en el foro de .NET en Foros del Web. Ojala alguien pueda decirme como crear funciones en asp.net, por que no se como fue el cambio en ese aspecto de asp a asp.Net. En ...
  #1 (permalink)  
Antiguo 22/11/2002, 10:59
 
Fecha de Ingreso: julio-2002
Mensajes: 209
Antigüedad: 21 años, 10 meses
Puntos: 0
Pregunta COmo crear funciones en Asp.Net?

Ojala alguien pueda decirme como crear funciones en asp.net, por que no se como fue el cambio en ese aspecto de asp a asp.Net.

En asp las instrucciones básicas para crear funciones son:

Function bMayordeedad(iEdad)
If iEdad > 18 Then
bMayordeedad = True
Else
bMayordeedad = False
End If
End Function

Alguien podría decirme como se traslada esa funcion a asp.Net.
  #2 (permalink)  
Antiguo 22/11/2002, 11:43
Avatar de bakanzipp  
Fecha de Ingreso: noviembre-2001
Ubicación: santiago de shilli
Mensajes: 2.554
Antigüedad: 22 años, 5 meses
Puntos: 0
lo ideal saeria que crearas tus clases desde el web service y que desde tu proyecto aspx los invocaras por medio de la url que le asignes a tu clase.

esta esta una buena pagina de ejemplos usando asp.net

visual studio NET
  #3 (permalink)  
Antiguo 22/11/2002, 12:10
 
Fecha de Ingreso: octubre-2000
Ubicación: Juarez, Chih.
Mensajes: 161
Antigüedad: 23 años, 6 meses
Puntos: 0
Usando Visual Basic .NET

Saludos.

Recuerda que en .net el contenido se separa del código, por lo que contarás con dos archivos. Uno llama al otro.

B) Este sería el código que contendría la función (archivo WebForm1.aspx.vb)

Public Class WebForm1
Inherits System.Web.UI.Page

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Response.Write(bMayordeedad(19))
End Sub

Function bMayordeedad(ByVal iEdad)
If iEdad > 18 Then
bMayordeedad = True
Else
bMayordeedad = False
End If
End Function

End Class

----------------------------------------------------------------

A) Esta seria la pagina ( WebForm1.aspx ) que llama al código ( WebForm1.aspx.vb ).

<%@ Page Language="vb" AutoEventWireup="false" Codebehind="WebForm1.aspx.vb" Inherits="Test1.WebForm1"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<title>WebForm1</title>
<meta name="GENERATOR" content="Microsoft Visual Studio.NET 7.0">
<meta name="CODE_LANGUAGE" content="Visual Basic 7.0">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
</form>
</body>
</HTML>


Nota aqui lo importante es ver la línea 1 de WebForm1.aspx , WebForm1.aspx sería la página que abrirías en tu navegador ( http://www.tusitio.com/WebForm1.aspx )
__________________
---------------------
Tan libre como gratuito!!!
  #4 (permalink)  
Antiguo 22/11/2002, 12:54
Avatar de Ruchu  
Fecha de Ingreso: octubre-2001
Mensajes: 698
Antigüedad: 22 años, 7 meses
Puntos: 2
tampoco es necesario tener separado el codigo vb del htm en 2 archivos diferentes no? se puede tener todo en el .aspx aunque diferenciando las 2 partes mediante las etiquetas <script> no?

lo digo xq he visto codigos de ejemplo por ahi que lo tienen asi, todo en un .aspx con las partes diferenciadas por etiquetas <script>, aunque no he probado los ejemploos estos.
  #5 (permalink)  
Antiguo 22/11/2002, 13:18
 
Fecha de Ingreso: octubre-2000
Ubicación: Juarez, Chih.
Mensajes: 161
Antigüedad: 23 años, 6 meses
Puntos: 0
Tienes razón

Saludos Ruchu,

Efectivamente, puedes tenerlo de las dos formas. En mi caso prefiero tener archivos separados para reusabilidad del código.
__________________
---------------------
Tan libre como gratuito!!!
  #6 (permalink)  
Antiguo 22/11/2002, 13:29
Avatar de Ruchu  
Fecha de Ingreso: octubre-2001
Mensajes: 698
Antigüedad: 22 años, 7 meses
Puntos: 2
rehusabilidad de codigo como tu dices si, pero tambien desorden de codigo.

si tienes un web con 300 pags has de tener tambien 300 .vb

no es que pasa nada claro que no, pero no se. quiza algunos .vb si valga tenerlos como separado por muchos otros nop.

cada uno trabaja a su manera, esta claro.

y vgaray, que se que estas hecho un fiera de los tips, a ver si empiezas a poner unos buenos de .aspx

  #7 (permalink)  
Antiguo 22/11/2002, 13:55
 
Fecha de Ingreso: octubre-2000
Ubicación: Juarez, Chih.
Mensajes: 161
Antigüedad: 23 años, 6 meses
Puntos: 0
Tips?

Si, acabo de hacerlo en este mismo post ; una respuesta al post inicial fué dada.

Tal vez me faltó dar mas datos con respecto a la reusabilidad y hacer la referencia de que con esto es posible reducir al máximo la cantidad de archivo .vb

Usando tu ejemplo diría que de 300 páginas, crear solo 20 archivos .vb para ser usados por estas primeras sería aceptable.

Estoy abierto a nuevas a ideas y cuando sea necesario usaré otro método que no sea el que he propuesto.

Y bueno, despues de todo; estamos aqui para ayudarnos.
__________________
---------------------
Tan libre como gratuito!!!
  #8 (permalink)  
Antiguo 24/11/2002, 12:11
Avatar de Henry Zapata  
Fecha de Ingreso: abril-2001
Mensajes: 125
Antigüedad: 23 años
Puntos: 0
Hola:

Solo para contribuir con el tema de conversación.

Yo prefiero usar la técnica de 2 files. Una para interfaz gráfica (.aspx) del usuario y la segunda para la interfaz funcional (aspx.vb); de esta mánera tanto el diseñador gráfico como el desarrollador manejaran archivos distintos y no interferian uno con el otro; ademas de ser el código mas limpio para cada uno de ellos (el diseñador solo vera código html y el desarrollador VB o C#).

Si manejas visual studio .net el manejo de 2 archivos por página aspx será transparente para el desarrollador y no lo veo como un desorden.

Creo que antes de reutilizar un aspx.vb para distintas páginas seria mejor llevar ese código comun a un clase y utilizarla en las paginas donde se requiera (manejo de libreria.) o tener una clase base con los metodos comunes y sea heredada por las demás páginas.

Los web services son ideales para comunicar fuentes de datos de distintas plataformas. Es como usar COM+ pero el dominio seria INTERNET en vez de una LAN, además que los datos son transportados bajo SOAP (Soportado por muchas plataformas) en vez de DCOM (Solo microsoft).

y lynx te recomendaria que no trataras de desarrollar en asp.net tal y como lo harias en asp porque si bien es posible hacerlos existen otras formas recomendadas para efectos de reusabilidad, escalamemiento, mejor mantenimiento, etc.

por ejemplo:

siguiendo el ejemplo de vgarary; la página aspx. hereda la clase webform1 (Inherits="Test1.WebForm1), por lo tanto tienes acceso a la función definida dentro de esta clase y podrias usar los metodos y funciones de este dentro del aspx de la siguiente manera.

<% if bMayordeedad(20) then %>
Eres mayor de edad
<% else %>
No eres mayor de edad
<% end if%>

Este código funciona pero seguirias bajo el punto de vista de asp y la idea de asp.net (.net en general) es no mezclar las capas de negocio.

Finalmente solo es una opinion personal y como dice vgaray estamos aqui para compartirlas y sacar provecho a cada una de ellas.

  #9 (permalink)  
Antiguo 25/11/2002, 10:20
 
Fecha de Ingreso: julio-2002
Mensajes: 209
Antigüedad: 21 años, 10 meses
Puntos: 0
Gracias por su respuesta, aunque saben aun como que me cuesta trabajo adaptarme a la forma tan extraña de trabajar que tiene asp.Net comparado con Asp, como que en este ultimo lo tenias mas bajo control todo y era mas facil meter codigo asp dentro de html con los bloque <%%>, pero pues bueno tendre que empezar a probar este nuevo lenguaje, aunque lo que si no me gusta mucho es el hecho de que se maneje por eventos.

Gracias voy a seguir viendo esto.
  #10 (permalink)  
Antiguo 25/11/2002, 10:58
 
Fecha de Ingreso: julio-2002
Mensajes: 209
Antigüedad: 21 años, 10 meses
Puntos: 0
Quisiera hacerles una pregunta más:

Es buena idea usar include file en Asp.Net?


Comunmente en asp yo utilizaba esto tanto como para incluir archivos que definan funciones, la conexion a la base de datos y menus en HTML de mis aplicaciones.
  #11 (permalink)  
Antiguo 11/02/2005, 10:34
 
Fecha de Ingreso: febrero-2005
Mensajes: 3
Antigüedad: 19 años, 2 meses
Puntos: 0
hola, mira no es muy complicado...

function cualquiera(iedad) as booblan (si devolves un numero pones as integer)
If iEdad > 18 Then
bMayordeedad = True
Else
bMayordeedad = False
End If


o los valores que quieras pero a la funcion
  #12 (permalink)  
Antiguo 11/02/2005, 12:23
Avatar de splinter  
Fecha de Ingreso: junio-2004
Ubicación: Misantla,Ver.Mexico
Mensajes: 181
Antigüedad: 19 años, 10 meses
Puntos: 0
Hola
te comento que puedes crear tus propias clases con funciones y procedimientos e incluirlos en tus proyectos .NET, de esta manera los puedes reusar en cualquier parte de tus 300 paginas por ejemplo o en otros proyectos .NET. En ASP incluir archivos con funciones seria algo parecido, pues NET tiene ya muchas diferencias.

O puedes usar en tu proyecto un modulo de codigo con funciones como se hace en vb6, solo que estas tiene un ambito mas limitado que hacer una clase.

Saludos
  #13 (permalink)  
Antiguo 11/02/2005, 13:45
Avatar de Rony J.  
Fecha de Ingreso: noviembre-2004
Ubicación: Maracay - Vzla
Mensajes: 223
Antigüedad: 19 años, 5 meses
Puntos: 0
Respecto a lo de si es recomendable usar include file o no, la verdad no he usado esto en .net y por lo tanto no soy el mas indicado para decirte si o no, pero lo que si he utilizado son controles de usuario .ascx, puedes tener un control de usuario en el que coloques por ejemplo la cabecera o la información del copyright d tu pagina y luego este control lo que haces es colocarlo en c/u d tus paginas y listo, cuando desees modificarlo lo haces y los cambios seran para todo tu sitio web .
y en cuanto a lo de tener el codigo separado me parece algo muy bueno y ademas es mas facil entender el codigo de esta manera, ademas en asp.net tienes por ejemplo mayor facilidad para programar un evento de un determinado control.
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 04:17.