Eugenio 的个人资料Blog de Eugenio Serrano照片日志列表 工具 帮助

日志


2006/7/25

Estamos en MSN Radio

Estamos en MSN Radio, hablando sobre el modelo de providers en ASP.Net 2.0

http://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?EventID=1032294878&EventCategory=4&culture=es-MX&CountryCode=MX%20

En la descripción no salgo yo, pero si soy el que habla, hay un error ahi.
Bueno este evento lo hicimos ya hace mas de un mes, junto con Daniel Seara, solo que estaba esperando que corrijan pero ya me canse. :-))
 
Saludos,
Eugenio Serrano
Microsoft MVP (ASP/ASP.Net)
Mentor asociado a Solid Quality Learning
http://www.eugenioserrano.com.ar
Si no puedo dibujarlo, quiere decir que no lo he entendido (Albert Einstein)
2006/5/23

Colaboración en la localización de Visual Studio 2005

Hace unos meses recibi un premio de reconocimiento por mi colaboración con Visual Studio 2005.
 
Hoy me ha llegado este reconocimiento por mi colaboracion en la localizacion de Visual Studio 2005 en español.
Particularmente creo que Visual Studio debería ser mucho más usado en su version en español. Hay muchisima gente que habla el castellano como su primera lengua y sin embargo utiliza Visual Studio en ingles. :-((
 
Creo que mientras más usemos la version localizada, cada ves mas tendremos productos mas buenos en nuestro idioma.
Esa fue mi motivación para colaborar con la traduccion de Visual Studio, y me siento de verdad orgulloso de haber aportado mi granito de arena en un producto increiblemente poderoso como Visual Studio 2005, por eso lo publico aqui. :-))
 
Saludos !!
Eugenio


2006/4/20

Visual Studio 2005 Express Gratis !!

Microsoft ha tomado la decisión de hacer gratis a las versiones Express de Visual Studio 2005. OK, ya sabíamos que era gratis por un año, pero ahora lo han liberado completamente.
 
Esto incluye a Visual Basic Express, Visual C# Express, Visual J# Express, y Visual Web Developer Express.
 
Es una excelente noticia ya que hay cientos de aplicaciones que pueden hacerse con esta versión de Visual Studio 2005. Ya se han descargado mas de 5 millones de copias de esta excelente herramienta, lo que demuestra el interés que hay por la misma.
 
Además, pronto tendremos noticias para todo lo que es hosting en ASP.Net 2.0
 
Si quieren ver mas info de los productos Express, aquí esta el link
Eugenio Serrano
2006/3/12

Envio de mail por STMP que necesite autenticación

Gracias a Alexandro Velarde que envió esto en un mail al grupo dotnetldn@gruposyahoo.com anoto esto en mi blog para que no se me pierdan entre los cientos de mails que tengo de las listas. Es una de esas cosas que cuando las necesitamos nunca sabemos donde estaba... :-))

 
Dim oMail As New Web.Mail.MailMessage
oMail.BodyFormat = Mail.MailFormat.Html
oMail.From = "el email de quien envia"
oMail.To = "el email que enviarás"
oMail.Subject = "asunto"
oMail.Body = "El cuerpo del mensaje....
"

oMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate ", "1")
oMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername ", Usuario)
oMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword ", Pwd)

Dim oSmpt As Mail.SmtpMail
oSmpt.SmtpServer = "
mail.tudominio.com"
oSmpt.Send(oMail)
 

Saludos,
Eugenio Serrano
Microsoft MVP (ASP/ASP.Net)
Mentor asociado a Solid Quality Learning
http://www.eugenioserrano.com.ar
Si no puedo dibujarlo, quiere decir que no lo he entendido (Albert Einstein)

2006/1/17

Como leer una pagina web por programación

Hace un tiempo tuve que utilizar esta función para obtener el contenido de una pagina Web, en un string, Hoy mi amigo MAO me pidió si no tenia algo para hacer justamente eso, y me tuve que poner a buscar la misma.

Así que la escribo aquí porque puede ser muy útil para otros, y cuando alguien me pregunte de nuevo, ya esta publicada.

La misma esta desarrollada en VisualBasic.Net y es tan simple de usar como llamarla, pasarle el URL a leer, y nos devuelve el HTML de la misma en un string.

Aquí esta la función:


Public
Shared Function GetHTMLFromURL(ByVal URL As String) As String
    Dim ASCII As New System.Text.ASCIIEncoding
    Dim netWeb As New System.Net.WebClient
    Dim lsWeb As String
    Dim laWeb As Byte()
    Try
        laWeb = netWeb.DownloadData(URL)
        lsWeb = ASCII.GetString(laWeb)
    Catch ex As Exception
        Throw New Exception(ex.Message.ToString + ex.ToString)
    End Try
    Return lsWeb
End Function
 


Saludos,
Eugenio

2006/1/10

Desing Templates para ASP.Net 2.0

Hace unos días publicaba sobre los templates gratuitos que Microsoft había publicado para ASP.Net 2.0
http://msdn.microsoft.com/asp.net/reference/design/templates/default.aspx

La semana pasada he tenido que realizar un sitio Web y aproveché para usar estos templates.
La verdad que están muy bien armados y utilizan toda la potencia de ASP.Net 2,0, ya que son implementados usando Master Pages y Themes, permitiendo que un desarrollador sin mucha idea de diseño como yo, haga sitios con apariencia realmente profesional.
De esta forma, solo me encargué del contenido y no del diseño que tanto me cuesta :-))

Aquí esta la página por si alguien quiere verla:
http://www.sendasserranas.com.ar

Además revisando de nuevo el enlace inicial, encontré este sitio:

http://www.microsoft.com/resources/design/

Donde se puede conocer a las personas encargadas del diseño de los productos de Microsoft como Windows y Office.

Saludos,
Eugenio

 

2006/1/2

¿ Porque no hay archivo de proyectos de ASP.Net en VS2005 ?

Visual Studio 2005 se ha movido a un modelo conocido como "Projectless".
Esto significa que, a diferencia de todos los demas tipos de aplicaciones que podemos realizar con Visual Studio 2005, no hay un archivo de proyecto para las aplicaciones de ASP.Net 2.0.

¿ Y cuales son las ventajas ?
Las primeras palabras que se me vienen a la mente son: Portabilidad y Deployment. Usando tanto HTML puro, como ASP ó PHP ó casi cualquier otro sistema de desarrollo Web, con solo subir los archivos en el servidor Web correspondiente se tiene la aplicación funcionando. Esto no era así en Visual Studio 2003 ya que teníamos que compilar la aplicación para que se generen los ensambles correspondientes en el directorio Bin y luego recién poder hacer el despliegue.
En realidad, esto no era una carácteristica de de ASP.Net 1.x sino de la forma en que Visual Studio 2003 manejaba los proyectos de ASP.Net. Prueba de esto es que con Web Matrix 2003 se podían desarrollar sitios Web sin tener un archivo de proyecto y sin la necesidad de tener IIS, usando un servidor local propio (Casini), que ahora si incluye en VS2005.
Asi que en Visual Studio 2005 se trató de continuar con esa idea, las ventajas más significativas son:
  • Todo archivo que se encuentre dentro del directorio es parte de la aplicación (Esto despues se convirtio en un problema).
  • Simple a la hora de pasar los proyectos web de un equipo a otro.
  • Facilidad de modificar los archivos con cualquier herramienta (Visual Studio / Dreamweaver / etc)
  • Mas facil de trabajar en un escenario compartido, donde varios desarrolladores tocan alguna parte de la aplicación al mismo tiempo.
  • Compilación Automática: Todo lo que se coloque en la carpeta App_Code se compila automáticamete.
  • Facil instalación: Debido a que solo hay que copiar los archivos y listo.

La caracteristica descripta en anteúltimo punto, justamente es para dar soporte a este modelo. Ya que antes, debiamos desde Visual Studio 2003, hacer el "Build" para que se generen las dlls correspondientes. Y en WebMatrix que si usaba este modelo, no teniamos posiblidad de escribir codigo separado (CodeBehind), ya que siempre se usaba el compilador JIT (O sea se compilaba la aplicacion en el primer uso)

Así que se tomo lo mejor de VS2003 y de WebMatrix y se unificó en VS2005.

Muy lindo no ?? Bien, la verdad que esta muy bueno, pero pronto saltaron algunos pequeños problemas...

Lo primero que uno piensa.. Donde quedan ahora todos los seteos que hacíamos sobre un proyecto Web en Visual Studio 2003, como las referencias a otros proyecto o librerias, por ejemplo ?
La respuesta corta es: Web.Config.  En el Web.Config ahora se soportan bastantes entradas más para dar cabida a cosas que antes se configuraban en el proyecto. Una de esas es la posibilidad de poner Option Strict On en los proyectos de Visual Basic, cosa que recomiendo encarecidamente. Por favor lea esto que escribí hace un tiempo
Hay un dicho en Microsoft que dice: "Si das a los desarrolladores la posibilidad de usar algo, lo van a usar. :-))"
Y esto fue justamente lo que pasó con la posibilidad de excluir archivos dentro de una solucion Web.
En este nuevo modelo, no se puede hacer tal cosa. Para quitar un archivo de la solución, simplemente hay que quitarlo de la carpeta. Por esta razón, antes de la liberación final del producto, los desarrolladores enviaron feedback a Microsoft diciendo: Queremos poder excluir archivos de los proyectos Web. Microsoft hizo una encuesta entre los MVPs de ASP.Net pidiendo cual seria la mejor forma de excluir los archivos y al final se decidió que cualquier archivo, dentro de culaquier carpeta en ASP.Net terminado en .exclude iba a ser ignorado. Si haces la prueba, verás que luego de renombrar el archivo, éste se despinta al igual que cuando se hace exclude en otro tipo de proyectos.
No es una gran solucion pero: Algo es algo, no ?

A mi este modelo me cierra perfectamente. Creo que tiene mas ventajas que desventajas, pero al que no le gusta la idea y quiere seguir trabajando al "viejo estilo", les tengo una buena noticia, ScottGu, el padre de ASP.Net esta preparando un AddIn para Visual Studio 2005, que permitira trabajar de aquella forma. El proyecto no esta terminado, pero seguro que pronto estará liberado. Aqui esta el link para que lo vean...

Feliz 2006 para todos, y espero que esto ayude,
Eugenio

 

2005/12/29

MsgBox para ASP.Net 2.0 y mas... (Beta)

Amigos, hace un par de meses que tengo terminado el control MsgBox para ASP.Net 2.0
El tema es que quería escribir un articulo en la MTJ.Net para publicarlo y aprovechar para escribir sobre algunas de las nuevas cosas que tiene ASP.Net 2.0 para el desarrollo de controles, pero como no he tenido tiempo y ya lo estan solicitando en algunas listas, lo publico aqui en mi blog como Beta, ya que tengo algunas ideas más para agregarle....

Este nuevo control viene a ser una actualización del que he publicado en este árticulo:
http://www.microsoft.com/spanish/msdn/comunidad/mtj.net/voices/art120.asp

Las novedades en esta versión:
  • Funciona correctamente cuando se pegan en una página 2 controles de usuario que usen MsgBox
  • Debido a la increible capacidad de incluir recursos de ASP.Net 2.0, he incluido la posibilidad de usar los mensajes estandar del explorador, o una ventana html que incluya imagenes para la confirmacion. Lo bueno que el usuario no tiene incluir imagenes ni scripts en su aplicacion. (Ya que estan incluidas en la dll)
  • Permite hacer PostBacks y CallBacks.
  • Reacciona a las teclas Esc y Enter
  • Se puede elegir en que boton aparece seleccionado
  • Etc..

Aquí algunas imagenes:






 

Hace un tiempo he publicado varios artículos sobre controles Web:
http://www.microsoft.com/spanish/msdn/comunidad/mtj.net/voices/art111.asp
http://www.microsoft.com/spanish/msdn/comunidad/mtj.net/voices/art177.asp
http://www.microsoft.com/spanish/msdn/comunidad/mtj.net/voices/art120.asp
http://www.microsoft.com/spanish/msdn/comunidad/mtj.net/voices/art145.asp


Ahora los tengo pasados a ASP.Net 2.0 y además he agregando nuevos controles en un Framework que pienso hacer público en poco tiempo, y es un pedacito muy pequeño de ese Framework el que les dejo para que lo vayan usando, que incluye el MsgBox y un control Button que perimite entre otras cosas, pedir confirmación llamando al MsgBox, o reaccionar cuando se presiona una tecla.

Bien, basta de palabras... Haga click aquí para bajarlo


2005/12/28

Instalación XCopy de Crystal Reports en Visual Studio 2003/2005

La instalación y despliegue de software en la época de DOS era simple. Bastaba copiar los ejecutables y los archivos que use el software en cuestión y todo funcionaba. Si se quería hacer un backup de la aplicación, se podia realizar sin problemas, usando el comando XCopy (que copia la carpeta y las subcarpetas de la misma).

Cuando llegó Windows, con su Registry que da soporte al modelo COM, empezamos a ver Exes, Dlls, Ocxs, etc.., desparramadas por nuestro sistema de archivos. Para tener una copia del software, no alcanzaba con copiar los ejecutables, primero porque se instalaban en distintos directorios y luego porque muchos componentes debian ser registrados en la Registry en el momento de instalarse. Asi es que llegó el Dll Hell (infierno de las dlls), ya que cuando dos programas usaban distintas versiones de una misma librería, ocurria que al instalar el segundo programa, el primero dejaba de funcionar, y si registrábamos el componente nuevamente para que funcione el primer programa, era el segundo el que dejaba de funcionar…
Los que renegaron con Windows 95 y WinNT conocen muy bien este problema.

A partir de Windwos 98 SE y Windows 2000, se le puso una solución a este problema desde el sistema operativo, que detectaba si distintas versiones del mismo componente se instalaban, y hacia una copia por cada una de las aplicaciones y al fin quedaban funcionando. Si bien esta fue una gran solución, no deja de ser una solución a medias, y para solucionar verdaderamente el problema, había que cambiar el modelo de deployment. Para eso llego .Net Framework
 
Con la tecnología .Net volvimos al XCopy Deployment, eso es, solo se instala por única vez el .Net Runtime y luego con solo copiar las aplicaciones, ya se puede empezar a utilizarlas. Existe por supuesto la GAC que contiene ensambles compartidos por varias aplicaciones, pero siempre se puede copiar la versión del ensamble que use una aplicación en el directorio de la misma sin necesitar registrar ese componente en ningún lado.
Esto es una gran cosa, y soluciona el problema conocido como infierno de las Dlls.

Asi que ahora podíamos simplemente llevar una copia de la aplicación, e instalarla en el cliente..… hasta que agregábamos un reporte de Crystal Reports :-)
Allí empezaban los problemas de nuevo, ya que Crystal Reports no deja de ser una aplicacion COM por un lado, y ademas solicita una clave de licencia, teniendo que hacer un instalador e incluir Mergue Modules con dicha clave. Echando por tierra la característica de XCopy Deployment si es que queriamos agregábamos estos reportes a nuestra aplicación.

Por suerte en Visual Studio 2005 la cosa ha cambiado. Si bien obviamente se pueden crear los paquetes de instalación, si se quiere usar XCopy para instalar las aplicaciones, puede hacerlo de la siguiente manera:

Instalación XCopy:
1) Instale por única vez DotNetFx.exe v2.0 en el equipo cliente
2) Instale (también por unica vez) CRRedist2005_x86.msi en el equipo cliente.
Este ultimo esta ubicado en C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages\CrystalReports

A partir de ese momento, ya puede hacer XCopy Deployment de sus aplicaciones, incluidas las que tienen informes de Crystal Reports. Facil verdad ??
Lo bueno de esto además, es que si se instala este paquete en un servidor Web, todas las aplicaciones podrán instalarse también simplemente copiando los archivos.

Por otro lado, si aun quiere seguir haciendo un paquete de instalación que incluya Crystal Reports, la cosa también se ha simplificado con Visual Studio 2005, ya que al haber abandonado los Merge Modules, se incluye el .msi en el paquete, y de esta forma, si ya hay otra aplicación que haya instalado ese componente no se volverá a instalar, cosa que si sucedía con los Merge Modules.

Incluyendo Crystal Reports en el paquete de instalación:
1) Con el proyecto en cuestión abierto, agregar un nuevo proyecto de instalacion a la solución: Solution->Add new Project -> Other Project Types -> Setup and Deployment->Setup Project
2) En Application Folder -> Add -> Project Output -> Primary output
3) Sobre el proyecto de Setup, click en Properties, y luego clic en el botón Prerequisites.
4) Allí elegir Crystal Reports for .Net Framework 2.0 tal como se ve en la figura.
5) Generar el proyecto de instalación.
 

¿ Y que pasa con Visual Studio 2003 ?
Con Visual Studio 2003 podemos emular este comportamiento, haciendo un paquete de instalación de un proyecto vacío, pero que incluya los Merge Modules con la clave de licencia tal como se explica aquí. De esta forma, instalando por única vez este paquete en el equipo del cliente o en el servidor, luego podremos instalar todas las aplicaciones utilizando XCopy...

Espero que esto ayude,
Eugenio
 
 
2005/12/21

Cursos Gratuitos de ASP.Net 2.0 (En ingles)

27 horas de cursos de ASP.Net 2.0 y gratis, directamente desde Microsoft !

http://msdn.microsoft.com/vstudio/learning/elearning_promo/#ASP.NET

En la misma página tambien pueden encontrar el curso Upgrading from Visual Basic 6.0 como así tambien enlaces a otros cursos como SQL Server, etc.

Espero que prontito tengamos este tipo de cursos pero en castellano...

Espero que esto ayude,
Eugenio
2005/12/14

CSS Properties Window y Generador de estilos

Visual Studio provee soporte para edicion de Estilos CSS. Por ejemplo, sobre un elemento HTML o sobre un control, podemos hacer click con el boton secundario y elegir Style, para ver un cuadro de dialogo donde podemos editar el estilo de cada elemento.
 
Pero con esta ventana de edición de propiedades de CSS desarrollada por Barry Tang (un desarrollador del team de VWD), que se instala sobre Visual Studio 2005, la cosa va mas alla y podemos ir editando las propiedades CSS a medida que seleccionamos los elementos. Lo bueno que nos muestra la herencia (que tambien podemos modificar) haciéndonos la vida mas fácil.
 
Y ya que estamos con CSS, aqui hay sitio para generar estilos. Muy bueno también.

Bien, aqui les paso el link para bajarse el editor de CSS para VS2005 y una imagen de la ventanita.

 
 
 
Espero que esto ayude,
Eugenio
 
2005/12/13

Nuevos Design Templates para ASP.Net 2.0

Templates gratuitos para descargar desde Microsoft que le dan a nuestras aplicaciones un look profesional y de muy buen gusto.

Estos templates son un conjunto de CSS, Master Pages, Themes y Skins que dan muchisima vida a mis aburridas pantallas :-))

Aqui esta el link para bajárselos
 
Realmente son bienvenidos y pienso que Microsoft deberia proveer muchos más asi nos ayuda a los desarrolladores (no diseñadores) a hacer sitios con una mejor apariencia.
 
Espero que esto ayude,
Eugenio
 

CLR Profiler Para .Net Framework 2.0

Ya esta disponible para bajar esta herramienta muy util para analizar nuestras aplicaciones. La buena noticia es que ahora soporta el analisis de las aplicaciones que corran sobre el Visual Studio Web Server (Tambien conocido como Cassini). Esto es una gran cosa, ya que no tenemos que tener IIS instalado para analizar nuestra aplicación.
 
Si nunca utilizaste CLR Profile, te recomiendo que lo hagas y verás como podrás ajustar el uso de memoria que hace tu aplicacion. Muy recomendable.
 
 
Espero que esto ayude,
Eugenio
2005/12/7

Material de mi presentación 5/12/2005 en Córdoba

Invitado por el Grupo de Usuarios de Microsoft, ayer participé en esta Jornada de dia completo de presentación de Visual Studio 2005 donde hablamos de Visual Studio 2005, ASP.Net 2.0, Desarrollo movil, y SQL2005.

Fue un gusto para mi exponer junto a Mauricio Grimber, Carlos Perez y Adrian Gárcia, a quienes por otro lado hacia mucho que no veia, igual que a todos los amigos del MUG que estuvieron aquí  y como a muchos amigos que participaron como asistentes.
 
Aqui dejo el material de mi presentación de ASP.Net 2.0
 

Los demos (Sitio y Base SQL2005)

Espero que esto ayude,
Eugenio
2005/11/22

Award for Customer Excellence

Bueno, esta mañana cuando abrí los mails me encontré con la grata sorpresa que he sido nominado con este reconocimiento por parte de Microsoft.
La verdad que todos los premios son buenos y ayudan a seguir metiendole para adelante, como decimos por estos lugares... De más esta decir lo orgulloso que me siento de haber contribuido aunque sea un poquito en una herramienta tan poderosa como Visual Studio 2005. Aquí esta la copia del mail: 

Dear Eugenio José Serrano,

Thank you for being a great contributor to Microsoft Visual Studio 2005.

You have been nominated to receive the Award for Customer Excellence. This award recognizes your extraordinary
contribution to the Visual Studio 2005 product and will be shipped to you without charge.
Please click the following link to arrange shipment of your award:

www.microsoft-ace.com

ACE Code:  ACE2-VS00-xxxx-xxxx

Should you have any questions about this award, please contact xxxxx@microsoft-ace.com .

All the best,

S. Somasegar
Corporate Vice President,
Microsoft Developer Division

2005/11/18

Dando Formato al GridView de ASP.Net 2.0

Despues de probar muchísimo y pensar al principio que era un Bug y luego verificar que en el RTM funciona de la misma manera, descubro que para dar formato a una columna de un GridView en ASP.Net 2.0, tenemos que primero obviamente poner el formato que deseamos en la propiedad DataFormatString y luego (y aqui está la solucion) hay que poner la propiedad HtmlEncode = False

En el campo DataFormatString debemos poner algo como esto. (Sacado de la ayuda de VS2005)
 
{0:C}   Displays numeric values in currency format.
 
{0:D}   Displays numeric values in decimal format.
 
{0:E}   Displays numeric values in scientific (exponential) format.
 
{0:F}   Displays numeric values in fixed format.
 
{0:G}   Displays numeric values in general format.
 
{0:N}   Displays numeric values in number format.
 
{0:X}   Displays numeric values in hexadecimal format.
 

Y yo agrego otro que no sale en la ayuda (si lo queremos dejar fijo)
{0:0#.0#}

Por último, ya anoto en la lista de deseos para Orcas que estas opciones deberian estar en una Combo desplegable mientras editamos las propiedades de la grilla.
 
Espero que esto ayude,
Eugenio.

 
2005/10/13

Usando propiedades de los controles de usuario Web

En Visual Studio 2003, podíamos agregar propiedades a nuestros controles de usuario web (Web User Controls) como a cualquier otra clase. El problema es que esas propiedades no eran "visibles" por Visual Studio 2003. Sin embargo podíamos utilizarlas en el código fácilmente, si es que nos acordábamos su nombre, como por ejemplo algo asi..
 
<uc1:MyControl id="MyControl1" runat="server" MyText="sdfasdf"></uc1:MyControl>
 
Pero si luego queríamos acceder a estas propiedades desde el code behind , debíamos declarar "a mano" el control en nuestro código, algo mas o menos asi...
 

Public WithEvents MyControl1 As MyControl

 
En Visual Studio 2005, están resueltos los dos problemas. Para este último no hay que hacer nada en particular, simplemente el nuevo modelo de compilación de páginas y controles, con sus clases parciales hacen que podamos acceder desde el código a nuestro control sin tener que declararlo previamente.
 
Y para que la propiedad sea visible desde Visual Studio 2005, hay que aplicar el mismo método que usamos con los controles web personalizados (Web Custom controls), esto es, agregar el atributo Browsable a la propiedad, dicho atributo pertenece a el namespace System.ComponentModel, algo mas o menos asi...
 

Imports System.ComponentModel
Partial Class Cuentas
    Inherits System.Web.UI.UserControl
    Private _Titulo As String
    <Browsable(True)> _
    Public Property Titulo() As String
        Get
            Return _Titulo
        End Get
        Set(ByVal value As String)
            _Titulo = value
        End Set
    End Property

    ....

    ....


Luego de eso, ya podemos acceder a las propiedades del control por medio de Visual Studio 2005 sin tener que recordar su nombre ;-)

 

Espero que esto ayude...

2005/10/7

ObjectDataSource en ASP.Net 2.0

Estuve leyendo este articulo de Andres Aguiar, con el cual no estoy del todo de acuerdo. Si bien es verdad que el enlace a objetos funciona mucho mejor en windows forms, y que en ASP.Net 2.0 finalmente se termina haciendo un adapter intermedio para poder enlazar los controles con nuestra capa media y manejar el estado, (y esto es lo que el critica), creo que el azance que se logra con este modelo es impresionante.

Estoy de acuerdo que si no nos manejamos con cuidado podemos tener problemas cuando se intenta escalar la aplicacion, pero eso no tiene que ver con el ObjectDataSource, sino como manejamos las cosas.
En algun lado, habra que mantener un estado mas alla de usar ó no estos controles. Puedo estar de acuerdo con que tal vez deberiamos tener algo mas avanzado aún, pero no por eso decir que no es un gran avance. El ahorro en lineas de código en la capa de presentacion es increible, y el enlaze de ida y vuelta de ASP.Net 2.0 nos hace muchísimos mas productivos.
 
Para mas informacion:
 
 
 

Depurando Javascript con Visual Studio 2005

Puede ver mejor esta nota, presionando aqui

Por lo que puedo observar comunmente en las listas de distribución sobre ASP.Net, y lo que a veces me preguntan mis amigos, pienso que mucha gente no conoce aún que Visual Studio tiene un excelente soporte para depuración de Javascript, asi que aquí explico como usarla. Esta característica ya viene desde Visual Studio 2003, pero en VS2005 funciona mucho mejor, principalmente el examinador variables, con el que podemos mirar casi cualquier cosa dentro del ambiente donde se ejecutan nuestras funciones Javascript. Cosa muy útil también para aprender cuando por ejemplo, queremos setear en alguna funcion Javascript alguna propiedad que recordamos su nombre y no tenemos ganas de ponernos a buscar en un manual, en ese caso, basta con poner un punto de interrupcion y con el examinador, accedemos al objeto en cuestion y obtenemos todos sus miembros. (Ojo que esta práctica, la de no leer el manual, puede alejarnos de los standars)
 
Bien, para habilitar la depuracion de Javascript o cualquier otra secuencia de comandos, tenemos que primero habilitar esto en Internet Explorer: Herramientas -> Opciones de Internet -> Opciones Avanzadas, y asegurarse de desmarcar estos 2 items:
 
Deshabilitar la depuracion de secuencias de comandos (Internet Explorer)
Deshabilitar la depuracion de secuencias de comandos (Otros)
 
Tal cual se ve en la figura:
 
 
 
Eso es todo, luego de esto, ya podemos poner BreakPoints (F9) sobre nuestras funciones Javascript, o si tenemos algun error nos dará la posiblidad de depurarlo, ver el error, examinar las variables, tal cual lo hacemos con cualquier lenguaje .Net como VB o C#.

Corremos nuestro sitio con F5 y obtenemos algo asi...
 
 
Espero que esto ayude,
Eugenio 
 
2005/10/6

App_Offline.htm

Hoy ScottGu publicó una entrada en su blog acerca de esta simple pero interesante característica de ASP.Net 2.0
 
Es muy siemple, si ponemos un archivo con este nombre en el directorio raiz de nuestra aplicacion Web, ASP.NET 2.0 bajará la aplicacion, descargará el dominio de la aplicacion del server, y dejará de procesar los nuevos request para la aplicacion. Simplemente si alguien intenta acceder a algun recurso, se enviará el contenido del archivo App_Offline.htm.
 
En ese archivo deberiamos poner algo como, sitio en mantenimiento, sitio no disponible, etc...
 
Es una idea muy buena para cuando se necesita hacer cambios grandes sobre una aplicacion, ya que ademas se cierran las conexiones con las bases de datos y se liberan todos los recursos que la aplicacion este usando.
 
Finalmente, con solo borrar dicho archivo, la aplicacion volvera a funcionar normalmente !!
 
Excelente idea !!!