Descargas: Plantillas de diseño para ASP.NET (ASP.NET 2.0 Design Templates)

Hace algunos años, existía un excelente recurso en MSDN para ASP.NET llamado: ASP.NET 2.0 Design Templates, bajo la siguiente url: http://msdn.microsoft.com/asp.net/reference/design/templates/default.aspx. No pude encontrar este recurso en otro lado, si alguien tiene el dato, por favor lo deja en los comentarios.

Aunque la página web mencionada no esta disponible, las plantillas como descargas si lo están. Gracias a mi amigo: flysun0311, por guardar los enlaces en esta entrada: 符合Web标准的ASP .NET 2.0 Starter Kit模板下载.

Todas estas descargas son compatibles para cualquier versión de ASP.NET, es más se pueden usar con cualquier otro lenguaje Php, Jsp, etc, el diseño es uno solo para todos Html y CSS.

P.D.: Si algún enlace no esta disponible, me avisan por los comentarios tengo un bakcup de todos estos archivos en la nube.

Html – Div y Table – “Basic Design Template” – Descarga

ST2 Basic Web Template

Html – Div y Table – “Fun Design Template” – Descarga

Html – Div y Table – “Grid Design Tamplte” – Descarga

Html – Div y Table – “Rounded Design Template” – Descarga

Html – Div y Table – “Simple Design Template” – Descarga

ASP.NET – Web Commerce Design – C# y VB

ASP.NET – Web Corporate Design – C# y VB

ASP.NET – Web Personal Design – C# y VB

ASP.NET – Web Small Business Design – C# y VB

Saludos,

[CodeSnipeet] C# Detección personaliza de un navegador móvil

Fácilmente  podríamos detectarlo usando la siguiente propiedad: Request.Browser.IsMobileDevice.

Pero esta propiedad no satisface algunos casos, por ejemplo con Opera Mini en un equipo Nokia. Si queremos crear nuestro propio método, podemos usar el siguiente código, extraído del artículo: Detecting a mobile browser in ASP.NET:

   1:  protected Boolean IsCustomMobileBrowser()
   2:  {
   3:      //GETS THE CURRENT USER CONTEXT
   4:      HttpContext context = HttpContext.Current;
   5:   
   6:      //FIRST TRY BUILT IN ASP.NT CHECK
   7:      if (context.Request.Browser.IsMobileDevice)
   8:      {
   9:          return true;
  10:      }
  11:      //THEN TRY CHECKING FOR THE HTTP_X_WAP_PROFILE HEADER
  12:      if (context.Request.ServerVariables["HTTP_X_WAP_PROFILE"] != null)
  13:      {
  14:          return true;
  15:      }
  16:      //THEN TRY CHECKING THAT HTTP_ACCEPT EXISTS AND CONTAINS WAP
  17:      if (context.Request.ServerVariables["HTTP_ACCEPT"] != null &&
  18:          context.Request.ServerVariables["HTTP_ACCEPT"].ToLower().Contains("wap"))
  19:      {
  20:          return true;
  21:      }
  22:      //AND FINALLY CHECK THE HTTP_USER_AGENT 
  23:      //HEADER VARIABLE FOR ANY ONE OF THE FOLLOWING
  24:      if (context.Request.ServerVariables["HTTP_USER_AGENT"] != null)
  25:      {
  26:          //Create a list of all mobile types
  27:          String[] mobiles =
  28:              new String[]
  29:              {
  30:                  "midp", "j2me", "avant", "docomo", 
  31:                  "novarra", "palmos", "palmsource", 
  32:                  "240x320", "opwv", "chtml",
  33:                  "pda", "windows ce", "mmp/", 
  34:                  "blackberry", "mib/", "symbian", 
  35:                  "wireless", "nokia", "hand", "mobi",
  36:                  "phone", "cdm", "up.b", "audio", 
  37:                  "SIE-", "SEC-", "samsung", "HTC", 
  38:                  "mot-", "mitsu", "sagem", "sony"
  39:                  , "alcatel", "lg", "eric", "vx", 
  40:                  "NEC", "philips", "mmm", "xx", 
  41:                  "panasonic", "sharp", "wap", "sch",
  42:                  "rover", "pocket", "benq", "java", 
  43:                  "pt", "pg", "vox", "amoi", 
  44:                  "bird", "compal", "kg", "voda",
  45:                  "sany", "kdd", "dbt", "sendo", 
  46:                  "sgh", "gradi", "jb", "dddi", 
  47:                  "moto", "iphone"
  48:              };
  49:   
  50:          //Loop through each item in the list created above 
  51:          //and check if the header contains that text
  52:          foreach (string s in mobiles)
  53:          {
  54:              if (context.Request.ServerVariables["HTTP_USER_AGENT"].
  55:                              ToLower().Contains(s.ToLower()))
  56:              {
  57:                  return true;
  58:              }
  59:          }
  60:      }
  61:   
  62:      return false;
  63:  }

P.D.: Si tienen algún dispositivo que no funciona en este código, nos dejan un comentario para actualizar el código.

Los detalles de la aplicación de este código, lo podemos ver en la siguiente página: http://sergiot2.com/browserInformation.aspx

Vamos a usar un navegador Wap para Windows, WinWap, para mostrar algunas páginas en su versión para móvil:

Si ingresamos a la página desarrollada:

Si ingresamos a Facebook vemos la redirección:

En Google presentan contenido de acuerdo al dispositivo:

Microsoft al parecer ya no tiene pensado soportar Wap:

Ingresando directamente a la dirección móvil:

Otros enlaces:

Saludos,