Archive for May 2012
QueryString Helper
Muy a menudo tengo que consultar los valores de las QueryStrings, y la verdad es que es horrible el montón de comprobaciones que hay que hacer. Además muchas veces, wap proxies o adsevers incluyen caracteres en la querystring, haciendo que los parsers lancen excepciones.
public static class Extensions { private static readonly Regex LeadingInteger = new Regex(@"^(-?\d+)"); public static T Get<T>(this System.Collections.Specialized.NameValueCollection nvc, string key) where T : IConvertible { T obj = default(T); if (nvc == null || string.IsNullOrEmpty(nvc[key])) return default(T); string v = nvc[key]; if (typeof(T) == typeof(Guid)) v = v.Substring(0, 36); if (typeof(T) == typeof(int)) { //http://stackoverflow.com/a/975512/22055 Match match = LeadingInteger.Match(v); if (!match.Success) v = match.Value; else return default(T); } try { obj = (T)Convert.ChangeType(v, typeof(T)); } catch { } return obj; } }
A veces, echo de menos las facilidades de lenguajes dinámicos como JS, por ejemplo, en el parseInt
Problemas para acceder a bbva.es desde Firefox
Si al acceder a bbva.es desde Firefox tienes un problema en el que se te informa que tu sesión ha expirado, prueba a desactivar algunos de los complementos que uses, en mi caso fue Do Not Track Plus (DNT+).