Foros del Web » Programando para Internet » ASP Clásico »

Contador de hits

Estas en el tema de Contador de hits en el foro de ASP Clásico en Foros del Web. Salud a todos! Tengo que hacer un contador "real" de hits por pagina, pero la verdad no se me ocurren muchas cosas para determinar que ...

  #1 (permalink)  
Antiguo 29/07/2005, 10:51
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Contador de hits

Salud a todos!
Tengo que hacer un contador "real" de hits por pagina, pero la verdad no se me ocurren muchas cosas para determinar que esa pagina ha sido visitada por ese usuario en ese dia por ejemplo, entonces pense que a lo mejor me echaban la mano para pensar en la moyoria de posibilidades para esto, obviamente cuando acabe el modulo lo pondre por aca por si a alguno le sirve.

Gracias a tod@s!

P.D. SI, estoy pidiendo que piensen por mi , pero lo digo abiertamente!
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #2 (permalink)  
Antiguo 29/07/2005, 11:03
Avatar de trasgukabi  
Fecha de Ingreso: septiembre-2004
Mensajes: 2.749
Antigüedad: 20 años, 8 meses
Puntos: 18
**una tabla con
-idpagina
-pagina
**otra con
-identrada
-idpagina
-ip
-fecha
**un include en todas las páginas que controle la IP del usuario. si no está, añades la entrada. el control de la página a añadir se podría hacer con request.ServerVariables("SCRIPT_NAME")

Algo así haría yo. Pero es viernes, ya sabes...jejeje
  #3 (permalink)  
Antiguo 29/07/2005, 11:11
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
OK, algo asi estaba pensando, el problema es que es un sitio con alta concurrencia, lo cual, hacer esta comprobacion por cada vez que el usuario cambia de pagina, quizas se vuelva una tarea terrible...

Por otro lado, se me ocurrio actualizar una cookie, crees que en cuestiones de performance seria mejor, actualizar una cookie y hacer la comprobacion contra la cookie? algo que almacene page = "1,20,50,1000"
Código:
si 
inst(valor_de_cookie, pagina_actual) > 0 then
  no guardo
else
  guardo
  actualizo cookie
fin si
Tambien me gustaria tener una tabla con IP's que no cuenten, esto para poder excluir por ejemplo mi IP y la IP del cliente, pero como lo harian uds? guardarian solamente 3 octetos?

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #4 (permalink)  
Antiguo 29/07/2005, 11:59
 
Fecha de Ingreso: abril-2004
Ubicación: México D.F.
Mensajes: 1.724
Antigüedad: 21 años
Puntos: 4
A ver si entendi bien,

Un contador que te llevo el control de el numero de veces que un determinado usuario visita la página o simplemente numero de accesos en general.

Es un sitio me imagino con acceso a usuarios autorizados.

Espero más detalles
  #5 (permalink)  
Antiguo 29/07/2005, 12:00
 
Fecha de Ingreso: julio-2005
Mensajes: 58
Antigüedad: 19 años, 9 meses
Puntos: 0
yo de asp no se casi nada, me ocupo mas de php, pero para esto existen otras formas como el log del cliente que genera el mismo servidor, donde por default te guarda fecha, hora, ip, pagina, etc., se crea en el url un visitaID que se va pasando por toda la pagina y es un sistema alterno el que puedes correr para leer esos logs.

solo estoy poniendo otra opcion a considerar, la opcion de las tablas tambien es muy valida, de hecho puede parecer pesado, pero es algo que estamos haciendo constantemente para jalar banners, actualizar impresiones, etc. y no resulta tan pesado.

lo de ip tiene la desventaja de que una oficina, escuela, etc., completa sera contabilizada como 1 sola, asi que la cookie resulta mejor, la cookie lo unico que te dira es que ese usuario ya entro, y en un cybercafe escuela, etc., muchas personas usan la misma computadora, todos estos metodos tienen un rango de error, por eso la visitaID es un poco mas exacta, porque ya tu separas por usuario que entro, grupos de IP, etc.

y de hecho, si tienes una cookies quiere decir que soportas session, y si soporta session, entonces mejor usar session, en PHP podemos pasar la session por el URL asi que es mucho mejor, pero en ASP se que no se puede, lo cual, tendrias que probar primero session, y si no, pues probar la IP

bueno, son solo opciones, espero te sirva mi comentario
  #6 (permalink)  
Antiguo 29/07/2005, 12:07
 
Fecha de Ingreso: abril-2004
Ubicación: México D.F.
Mensajes: 1.724
Antigüedad: 21 años
Puntos: 4
Exacto guardar las ips pues no va, es determinarlo mediante el logueo con el nombre de usuario.
  #7 (permalink)  
Antiguo 29/07/2005, 12:13
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Detallo un poco mejor...
Tengo un sitio con contenido dinamico, es decir, todas las paginas se generan a partir de un index.asp recibiendo parameteros:

page=1,page=2,page=x

Lo que necesito hacer es un contador real de hits por pagina para obtener el "top 10" de este sitio, es decir, no puedo actualizar el valor de hits de esa pagina, si la IP del usuario ya fue registrada para la pagina.

Como este es un sitio con contenido dinamico, obviamente no me interesa registrar los hits obtenidos de la IP de mi cliente, ni de la mia, ya que los dos andaremos por todo el sitio, un "approach" es el que dijo trasgus, comparar en cada ocasion, la IP contra el ID de la pagina, si no esta para esta fecha, entonces lo registro.

El problema es, conforme el sitio crezca en visitas, la tabla se llenara increiblemente, pues ademas es un sitio con alta concurrencia, por lo tanto, se supone que al hacer el query a la base de datos preguntando por la IP, el id de la pagina y la fecha, en corto tiempo el performance se vera seriamente afectado.

Posible "approach":
Escribir una cookie, y actualizarla cada vez que el usuario visite una pagina, si la el id no esta en la cookie, la registro en la base de datos y actualizo la cookie, la expiro diariamente.

A su vez quiero tener una tabla de IP's que no registraran hits, pero, esas IP's pueden estar dentro del segmento de red del servidor, siendo del tipo 192.168.1.x, o puede ser otra IP, la del cliente, por lo tanto, como harian la comprobacion de que esa IP esta excluida? con 3 octetos, o utilizando los 4 octetos? ambos?

Espero haber sido un poco mas claro...


Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #8 (permalink)  
Antiguo 29/07/2005, 12:42
 
Fecha de Ingreso: julio-2005
Mensajes: 58
Antigüedad: 19 años, 9 meses
Puntos: 0
es posible que ocupes implementar algo como lo del sistema del log entonces, pero pienso que mejor session que la cookie y mejor la cookie que la ip
  #9 (permalink)  
Antiguo 29/07/2005, 12:54
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Si, el problema con la sesion, es que expira tan pronto como el usuario abandone el sitio, y necesito que expire diariamente.

Tu hablas del sistema de logs en el IIS?
El problema con eso es que el usuario hosteara su aplicacion y que pasa si decide no habilitar sus logs?

Salu2, y gracias por sus contribuciones, a ver si me pueden ayudar un poco mas
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #10 (permalink)  
Antiguo 29/07/2005, 15:31
 
Fecha de Ingreso: abril-2004
Ubicación: México D.F.
Mensajes: 1.724
Antigüedad: 21 años
Puntos: 4
Ok. está más claro.

Bien, tu aproximación es viable y la implementaria, que expire cada día es correcto.

Ahora en cuanto a las ip's privadas con un split comparas los tres bytes

if(byte1=192 and byte2=168 and byte3=1)then

siginifica ques una ip privada, y haces las operaciones de insertar en la tabla donde no incluye el top 10.

Pues si, cada vez que visite la página se hará la comprobación si existe la cookie. No hay de otra.

Perdón por constestar haste esta hora. Pero los viernes son más pesados y luego que ando enfermo no voy a poder

Salud x los que pueden.
  #11 (permalink)  
Antiguo 29/07/2005, 15:44
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Gracias masters, ya lo tengo implementado, en un momento mas se los pongo por aca.

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #12 (permalink)  
Antiguo 29/07/2005, 15:44
 
Fecha de Ingreso: julio-2005
Mensajes: 58
Antigüedad: 19 años, 9 meses
Puntos: 0
el IIS no lo manejo, pero me imagino que hace lo mismo que apache, que guarda un archivo de texto donde estan todas las peticiones al servidor, pero en lugar de este archivo puedes hacer algo como el log, la cookie es buena opcion pero debes tomar en cuenta que durante todo ese dia varios usuarios diferentes pueden usar la misma computadora, tanto en oficinas, escuelas, cafe internet, etc., eso ya sera desicion tuya.
  #13 (permalink)  
Antiguo 29/07/2005, 16:39
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Si, estoy de acuerdo contigo con respecto a las cookies, pero despues de analizarlo creo que no nos importa mucho que solo se guarde un hit por cada pagina que venga de la misma IP...y obviamente se necesitan las cookies habillitadas, este es el codigo por si a alguien le sirve:

Optimizado para MS SQL

DB estructura:

tbl_visit
- visit_ip | varchar | 50
- page_id | int | 4
- visit_date | date | 8

tbl_visit_exclude
- visit_exclude_ip | varchar | 50
- visit_exclude_three_octets | bit | 1


Código:
<%
Const sep = ":."
Class Visit
	Private m_record_page
	Private m_client_ip
	
	Public Property Get record_page()
		record_page = m_record_page
	End Property
	Public Property Let record_page(p_data)
		m_record_page = p_data
	End Property
	
	Public Property Get client_ip()
		client_ip = m_client_ip
	End Property
	Public Property Let client_ip(p_data)
		m_client_ip = p_data
	End Property
	
	Public Function isIPExcluded()
		Dim boolIPExcluded
		Dim pos
		Dim strTempIP
		Dim strTempClientIP
		strTempIP = ""
		strTempClientIP = ""
		boolIPExcluded = false
		ds = GetExcludedIPs()
		if isArray(ds) then
			strTempClientIP = ""	
			pos = instrRev(m_client_ip, ".")
			strTempClientIP = left(m_client_ip, pos)	
			for j =0 to uBound(ds,2)
				strTempIP = ""
				if ds(1,j) then
					'three octets
					'we need to parse our IP here
					arrTempIP = split(ds(0,j), ".")
					if uBound(arrTempIP) => 2 then
						strTempIP = ""
						for i = 0 to 2
							strTempIP = strTempIP & arrTempIP(i) & "."
						next
					else
						erase arrTempIP
						exit for
					end if
					erase arrTempIP
					if strTempIP = strTempClientIP then
						boolIPExcluded = true
						exit for
					end if
				else
					'regular IP
					if cstr(ds(0,j)) = cstr(m_client_ip) then
						boolIPExcluded = true
						exit for
					end if
				end if
			next
			erase ds	
		end if
		isIPExcluded = boolIPExcluded
	End Function
	
	Public Sub RecordVisit()
		Dim pages_visited
		Dim boolPageFound
		pages_visited = Request.Cookies("visit")("pages_visited")
		if len(pages_visited) > 0 then
			'User has been here today
			boolPageFound = false
			arrPagesVisited = split(pages_visited, sep)
			for j = 0 to uBound(arrPagesVisited)
				if cstr(arrPagesVisited(j)) = cstr(m_record_page) then
					boolPageFound = true
					exit for
				end if
			next
			erase arrPagesVisited
			if not boolPageFound then
				'New visit to this page, we have to update the cookie
				'Look for IP Address Excluded	
				if not isIPExcluded() then
					Call RecordValues(m_record_page, m_client_ip, pages_visited)
				end if
			end if
		else
			'First time this page will be recorded today
			'Look for IP Address Excluded
			if not isIPExcluded() then
				Call RecordValues(m_record_page, m_client_ip, pages_visited)
			end if
		end if		
	End Sub
		
	Private Function GetExcludedIPs()
		Dim ObjConn
		Dim rs
		Dim cmd
		Dim qry
		Set ObjConn = Server.CreateObject("ADODB.Connection")
		Set rs = Server.CreateObject("ADODB.Recordset")
		Set cmd = Server.CreateObject("ADODB.Command")
		ObjConn.Open strConnect
		qry = "SELECT visit_exclude_ip, visit_exclude_three_octets FROM tbl_visit_exclude"
		cmd.ActiveConnection = ObjConn
		cmd.CommandText = qry
		cmd.CommandType = adCmdText
		rs.CursorType = 3
		rs.Open cmd
		if not rs.EOF then
			ds = rs.GetRows()
		else
			ds = Null
		end if
		ObjConn.Close
		Set ObjConn = Nothing
		Set rs = Nothing
		Set cmd = Nothing
		GetExcludedIPs = ds
	End Function

	Private Sub RecordValues(thispage, thisip, strPagesVisited)
		Dim ObjConn
		Dim param
		Dim cmd
		Dim qry
		Set ObjConn = Server.CreateObject("ADODB.Connection")
		Set cmd = Server.CreateObject("ADODB.Command")
		ObjConn.Open strConnect
		qry = "INSERT INTO tbl_visit VALUES(?,?,?) "
		Set param = cmd.CreateParameter("visit_ip", adVarChar, adParamInput, 50, thisip)
		cmd.Parameters.Append(param)
		Set param = cmd.CreateParameter("page_id", adInteger, adParamInput, 4, thispage)
		cmd.Parameters.Append(param)
		Set param = cmd.CreateParameter("visit_date", adDate, adParamInput, 8, Now())
		cmd.Parameters.Append(param)
		cmd.ActiveConnection = ObjConn
		cmd.CommandText = qry
		cmd.CommandType = adCmdText
		cmd.Execute()
		ObjConn.Close
		Set ObjConn = Nothing
		Set cmd = Nothing
		Set param = Nothing
		if len(strPagesVisited)	 > 0 then
			Response.Cookies("visit")("pages_visited") = strPagesVisited & sep & page
		else
			Response.Cookies("visit")("pages_visited") = page
		end if
		Response.Cookies("visit").Path = "/"
		Response.Cookies("visit").Expires = DateAdd("d", 1, Date())				
	End Sub		
End Class
%>
y mas o menos se llamaria asi:

Código:
page = request.querystring("page")
Set ObjVisit = New Visit
ObjVisit.client_ip = Request.ServerVariables("REMOTE_ADDR")
ObjVisit.record_page = page
if len(ObjVisit.client_ip)  > 0 and ObjVisit.record_page > 0 then
	Call ObjVisit.RecordVisit()
end if
Set ObjVisit = Nothing
Felices Trazos! je je
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway

Última edición por u_goldman; 29/07/2005 a las 16:58
  #14 (permalink)  
Antiguo 29/07/2005, 17:56
 
Fecha de Ingreso: julio-2005
Mensajes: 58
Antigüedad: 19 años, 9 meses
Puntos: 0
que buena onda son en este foro, pusiste todo el codigo asi noman , como no se mucho de ASP ya lo guarde jejejeje, una pregunta, es ASP o es ASP.NET ??? de hecho cualquier ayuda para aprender ASP.NET es bienvenida...
  #15 (permalink)  
Antiguo 29/07/2005, 17:58
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Es ASP, pero como siempre les digo, mientras trabajes con clases en ASP tradicional, la migracion no sera dificil, mi espacio de nombres en ASP.NET seria Visit, que es el nombre de la clase, y habria que modificar los recordsets, se me ocurre que por sql readers.

Salu2,

P.D. No hay razon por la cual no compartir codigos, al menos eso creo yo
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #16 (permalink)  
Antiguo 29/07/2005, 18:03
 
Fecha de Ingreso: julio-2005
Mensajes: 58
Antigüedad: 19 años, 9 meses
Puntos: 0
hola

y si manejas funciones normales ?, cual seria la diferencia, en ASP.NET no se pueden poner funciones ?, en php manejo puros includes con funciones ? pero estoy queriendo aprender ASP.NET, entonces cual seria el problema ?
  #17 (permalink)  
Antiguo 29/07/2005, 18:06
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Te dejo este link:

http://www.forosdelweb.com/f15/acabara-sustituyendo-asp-net-asp-convencional-319810/

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #18 (permalink)  
Antiguo 29/07/2005, 19:00
 
Fecha de Ingreso: julio-2005
Mensajes: 58
Antigüedad: 19 años, 9 meses
Puntos: 0
buena liga, ahora, que recomendarias, programar en CS o en VB para ASP.NET ... ??
  #19 (permalink)  
Antiguo 29/07/2005, 19:07
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Yo estoy yendo por la ruta del bajo nivel con C#, pa' cambiarle un poco!

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #20 (permalink)  
Antiguo 29/07/2005, 19:17
 
Fecha de Ingreso: julio-2005
Mensajes: 58
Antigüedad: 19 años, 9 meses
Puntos: 0
jajaja, a mi me gustaria VB para variar, C# se parece mucho a PHP, pero bueno, habria uno mejor, porque por ahi lei que era mejor C# ??? pero no se porque lo decia ?
  #21 (permalink)  
Antiguo 29/07/2005, 19:19
 
Fecha de Ingreso: julio-2005
Mensajes: 58
Antigüedad: 19 años, 9 meses
Puntos: 0
conoces algun libro para ASP.NET que este padre en español para empezar ?
ahorita estoy en la parte de como poder correr clases hechas en C# en mi archivo .aspx, no me aclaro como hacerlo, tampoco he podido compilar los arhivos .CS para que los pueda usar como librerias mi .aspx ???
  #22 (permalink)  
Antiguo 29/07/2005, 19:23
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Mmmhhh, en realidad no he buscado fuentes en espanol, pero mira en la firma de trasgukabi, tiene buenos manuales, respondiendo a lo de si es mejor o no, pues supongo que dicen que C# es mejor por lo mismo del bajo nivel, pero creo que todo es cuestion de gustos y con que te sientas mejor!
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #23 (permalink)  
Antiguo 29/07/2005, 21:35
Avatar de Neuron_376  
Fecha de Ingreso: abril-2005
Mensajes: 1.051
Antigüedad: 20 años, 1 mes
Puntos: 2
Hola!

AprendizNet, ya conociste a u_goldman, jajajaja, a ver como te va, tratenme bien a AprendizNet por favor, es un master en su ramo, y ahora tiene la misión de aprender ASP.NET lo antes posible...

De lo del contador U_G otra opcion como bien apunta aprendiz, es el log, basado en una tabla imagina que siempre haces inserts, inserts, inserts, y al final del dia lo que haces es correr un programa que copia esa tabla a otra temporal y la vacia, recorre esa tabla y crea las estadisticas que necesita, esta info se vacia en otra tabla general, como backup, entonces el performance de la aplicaion del contador de visitas no afecta casi nada a toda la aplicacion, este metodo es muy usado, por eso miras por ejemplo en varios servidores que las estadisticas te las dan siempre al dia siguiente, y no en ese mismo dia, casi siempre se basa en el log de txt, pero con tablas tambien se puede implementar, con esa serie de inserts, bueno, es otra opcion, no dependes de cookies, etc., pero bueno es mucho mas complicado y ocupa mas tiempo.

Por otra parte lo del contador, es mejor si lo implementas en un store procedure, ahi tiene trucos y ya sabes, la eficiencia sera mucho mayor, un truco es algo como...

if @ip <> bloqueada
begin

-- Con un update revisas automaticamente si la existe o no existe
update tabla set [] where ip = @ip and cookie = @CookieID

IF @@error == 0 and ROWCOUNT = 0
begin

-- No se actualizo nada y no hubo ningun error, entonces no se actualizo nada, por lo cual hacemos entonces la insercion de una nueva visita

insert into..... bla bla bla

end


Bueno, creo que ese SP sera mejor, el update te sirve como select y verificador al mismo tiempo, asi te ahorras pasos, claro, cuando no existe pues resulta uina peticion extra, pero igual, si nos ponemos a pensar que cuando no existe de todas formas hacemos un select para investigar que hacer nos fijamos que con el metodo del select siempre tenemos dos peticiones, y con el where tenemos a veces 2 peticiones, y la mayoria de las veces tendremos solamente 1 peticion, ademas por estar todo en el SP todo este proceso sera mucho mas rapido.

Tambien para haerlo mas rapido create un index clustered sobre [paginaID - IP], creo que eso ayudaria mucho...

Por cierto ya me fusile tu codigo, jajajaja, es bueno tener buenas opciones a la mano

Suerte!!
__________________
NeuronaNet.com... la idea correcta.
http://www.NeuronaNet.com
  #24 (permalink)  
Antiguo 30/07/2005, 01:16
Avatar de trasgukabi  
Fecha de Ingreso: septiembre-2004
Mensajes: 2.749
Antigüedad: 20 años, 8 meses
Puntos: 18
la mejor migración que, por lo que he visto, se puede hacer es: ASP->ASP.NET CON CSHARP (Ayer leí en el tutorial sobre asp.net que está en mi firma que incluso puedes incluir rutinas en C para mandar instrucciones a bajo nivel o accesos directos a memoria)

siguiendo con el tema, U-G. Sí, en cuestión de performance, un control con cookies sería más liviano. Pero creo que, en este caso, la mejor opción sería control total por BD. Al fin y al cabo, las comprobaciones de IP son selects muy livianos. Y seguro que las dos primeras partes de una IP privada sumadas, dan un número distinto que una ip pública(ésto de pista )
  #25 (permalink)  
Antiguo 31/07/2005, 22:09
 
Fecha de Ingreso: julio-2005
Mensajes: 58
Antigüedad: 19 años, 9 meses
Puntos: 0
tal vez tengas toda la razon, c# te permite mas funciones, lo que estoy buscando y quisiera encontrar es cual seria la estructura, o las diferentes estructuras recomendables para programar en ASP.NET, ejemplo:

PHP

<?
//Incluir librerias
//Ejecutar codigo
//Mandar escribir el HTML generado mediante un:
echo $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.
  #26 (permalink)  
Antiguo 01/08/2005, 12:17
 
Fecha de Ingreso: julio-2005
Mensajes: 58
Antigüedad: 19 años, 9 meses
Puntos: 0
tambien puse esta pregunta en el foro de ASP.NET directamente, lo pueden ver en la siguiente liga..

http://forosdelweb.com/showthread.php?t=321549

cualquier opinion y ayuda es bienvenida.

gracias a todos.
  #27 (permalink)  
Antiguo 01/08/2005, 13:41
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Cita:
AprendizNet, ya conociste a u_goldman, jajajaja, a ver como te va
Que habras querido decir?
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #28 (permalink)  
Antiguo 01/08/2005, 13:43
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
En realidad el HTML que manejas embebido en el codigo deberia ser muy poco, utiliza por una parte el code behind, maneja tu logica en archivos de tipo clase lo mas posible y familiarizate con los controles .NET, con eso el HTML se reduce drasticamente.

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #29 (permalink)  
Antiguo 01/08/2005, 13:49
 
Fecha de Ingreso: julio-2005
Mensajes: 58
Antigüedad: 19 años, 9 meses
Puntos: 0
entonces dices que todo en 1 solo archivo, eso es lo correcto en ASP.NET ?

index.aspx

<%

//Codigo ASP.NET

%>
<html
<!-- codigo html -->
</html>


Asi seria lo mejor entonces ? .. gracias.
  #30 (permalink)  
Antiguo 01/08/2005, 13:59
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Bueno, uno, dos o x archivos es lo de menos, pero me parece que la mejor estructura es la que ya comentamos, con el perdon de AZ :

Default.aspx
Código:
<%@ Page language="c#" Codebehind="Default.aspx.cs" AutoEventWireup="false" Inherits="GoodSearch._Default" %>
CODIGO HTML
default.aspx.cs
Código:
namespace GoodSearch
{
	/// <summary>
	/// Contains search form, charity search and selection.
	/// </summary>
	public class _Default : System.Web.UI.Page
	{
		protected System.Web.UI.WebControls.ListBox charitySelect;
                .
                .
                .
		private void SearchButton_Click(object sender, System.EventArgs e)
		{
			if (searchString.Text.Length > 0)
			{
				if (Request.Cookies["GoodSearchCharityID"] != null)
				{
					Charity charity = new Charity();
					charity.ID = int.Parse(Request.Cookies["GoodSearchCharityID"].Value);
					charity.SearchString = searchString.Text;
					charity.AddSearch();
				}
				Response.Redirect(Server.UrlDecode(ConfigurationSettings.AppSettings["searchurl"]) + Server.UrlEncode(searchString.Text));
			}
		}
}
Algo asi...despues desde el segundo archivo haces llamadas a tus modulos de clase, manejas algo de HTML, pero casi nada.

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
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 10:30.