public AjaxDictionary<string, object> Get_CatUrl()
        {
            AjaxDictionary<string, object> result = new AjaxDictionary<string, object>();
            try
            {
                using (var entity = new db_SeguimientoProtocolo_r2Entities())
                {
                    //entity.wappSpAttemptLogUser("", "", true).ToList();
                    List<spGetHashablePuntoMedicion_Result> res = entity.spGetHashablePuntoMedicion().ToList();

                    int i = 0;
                    (from s in entity.CAT_LINKS
                     where s.IsActive == true
                     select s).ToList().ForEach(row =>
                     {
                         AjaxDictionary<string, object> item = new AjaxDictionary<string, object>();
                         item.Add("idUrl", row.IdLink);
                         item.Add("Url", row.LinkUrl);
                         item.Add("IsActive", row.IsActive);
                         item.Add("DescriptionUrl", row.LinkName);
                         result.Add("Result" + i.ToString(),item);
                         i++;
                     });
                }
            }
            catch (Exception ex)
            {
                var err = ex.Message;
            }
            return result;
        }
        public AjaxDictionary<string, object> GetPuntosMedicion()
        {
            AjaxDictionary<string, object> tipos = null;
            long tipopmSentinel = -1;

            using (var entity = new db_SeguimientoProtocolo_r2Entities())
            {
                List<spGetHashablePuntoMedicion_Result> res = entity.spGetHashablePuntoMedicion().ToList();

                if (res != null && res.Count > 0)
                {
                    tipos = new AjaxDictionary<string, object>();
                    foreach (spGetHashablePuntoMedicion_Result r in res)
                    {
                        if (tipopmSentinel != r.IdTipoPuntoMedicion)
                        {
                            tipopmSentinel = (long)r.IdTipoPuntoMedicion;
                            tipos.Add(this.toStrIdTipoPm(tipopmSentinel), new AjaxDictionary<string,object>());
                        }

                        //Llenar atributos
                        AjaxDictionary<string,object> attrs = new AjaxDictionary<string, object>();
                        string ultAct=r.ultimaActualización.ToString();
                        if(ultAct.Length>=12){
                            ultAct=ultAct.Substring(0,12);
                        }

                        attrs.Add("puntoMedicionName", r.PuntoMedicionName);
                         attrs.Add("lat", r.latiitud);
                         attrs.Add("long", r.longitud);
                         attrs.Add("idTipoPm", r.IdTipoPuntoMedicion);
                         attrs.Add("idPm", r.IdPuntoMedicion);
                         attrs.Add("dependencias", r.dependencias);
                         attrs.Add("parametroMed", r.ParametroMedicion);
                         attrs.Add("unidadMedida", r.UnidadMedidaName);
                         attrs.Add("unidadMedidaShort", r.UnidadMedidaShort);
                         attrs.Add("sistema", r.SistemaName);
                         attrs.Add("ultimaActualizacion", ultAct);
                         attrs.Add("ultimaCond", r.UltimaCondicion);

                        this.toDictio(tipos, tipopmSentinel).Add(toStrIdPm(r.IdPuntoMedicion), attrs);

                    }//endforeach
                }//endif
            }//endusing

            return tipos;
        }