<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Prueba LocalStorage</title>
<script src="javascripts/jquery-1.5.min.js" type="text/javascript"></script>
<script>
var items = {'18': 4 , '17' : 44 , '16' : 84};
$(document).ready(function() {
$("#main").append("<div>Original items:" + JSON.stringify(items) + "</div");
localStorage.setItem('varItems', JSON.stringify(items));
var savedItems = localStorage.getItem('varItems');
$("#main").append("<div>Saved items:" + savedItems + "</div>");
});
</script>
</head>
<body>
<div id="main"></div>
</body>
</html>
Pizarra de desarrollo de software.
Blog con recordatorios de soluciones a problemas específicos que me encontré desarrollando software.
jueves, 24 de febrero de 2011
Almacenando objetos complejos usando localStorage
En principio solo es posible almacenar parejas clave valor, pero se puede serializar el objeto javascript en un texto JSON y almacenarlo como value.
viernes, 11 de febrero de 2011
Evento al cierre de browser en Visual WebGui
En Visual WebGui existe el evento ThreadSuspend que se ejecuta cuando cerras la ventana del browser, apretas F5 o navegas otra url.
public void RegisterThreadSuspendHandler()
{
Application.ThreadSuspend += new EventHandler(Application_ThreadSuspend);
}
void Application_ThreadSuspend(object sender, EventArgs e)
{
//Codigo para cierre de form
}
lunes, 7 de febrero de 2011
Clases para validación de superposición de rangos
Método que las utiliza:
static bool RangosSuperpuestos(DataRow dr, string pHoraInicio, string pHoraFin)
{
DateTime horaIniciodr = DateTime.Parse(dr["Inicio"].ToString());
DateTime horaFindr = DateTime.Parse(dr["Fin"].ToString());
DateTime horaInicio = DateTime.Parse(pHoraInicio);
DateTime horaFin = DateTime.Parse(pHoraFin);
return Range.Overlap(new Range(horaIniciodr, horaFindr), new Range(horaInicio, horaFin));
}
Clases Auxiliares:class Range
{
public readonly T Start;
public readonly T End;
public Range(T start, T end)
{
Start = start;
End = end;
}
}
static class Range
{
public static bool Overlap(Range left, Range right) where T : IComparable
{
if (left.Start.CompareTo(right.Start) == 0)
{
return true;
}
else if (left.Start.CompareTo(right.Start) > 0)
{
return left.Start.CompareTo(right.End) <= 0;
}
else
{
return right.Start.CompareTo(left.End) <= 0;
}
}
}
miércoles, 2 de febrero de 2011
Metodo para grabar texto en un archivo usando C#
public void LogText(string text,bool logDate)
{
string path = @"C:\texto.log";
FileStream fs;
if (!File.Exists(path))
fs=File.Open(path,FileMode.Create,FileAccess.Write);
else
fs = File.Open(path, FileMode.Append, FileAccess.Write);
using (var outfile =new StreamWriter(fs,Encoding.UTF8))
{
string logLine = string.Empty;
if (logDate)
logLine = String.Format("{0:G} - {1}.", System.DateTime.Now, text);
else
logLine = text;
outfile.WriteLine(logLine);
}
fs.Close();
}
viernes, 14 de enero de 2011
Quitar texto entre < > en una cadena
public static string RemoveTags (string str)
{
return Regex.Replace (str, "<.*?>", string.Empty);
}
sábado, 20 de noviembre de 2010
Obtener el tamaño de todas las tablas de una base de datos en SQL Server
DECLARE @TableName VARCHAR(100) --For storing values in the cursor
--Cursor to get the name of all user tables from the sysobjects listing
DECLARE tableCursor CURSOR
FOR
select [name]
from dbo.sysobjects
where OBJECTPROPERTY(id, N'IsUserTable') = 1
FOR READ ONLY
--A procedure level temp table to store the results
CREATE TABLE #TempTable
(
tableName varchar(100),
numberofRows varchar(100),
reservedSize varchar(50),
dataSize varchar(50),
indexSize varchar(50),
unusedSize varchar(50)
)
--Open the cursor
OPEN tableCursor
--Get the first table name from the cursor
FETCH NEXT FROM tableCursor INTO @TableName
--Loop until the cursor was not able to fetch
WHILE (@@Fetch_Status >= 0)
BEGIN
--Dump the results of the sp_spaceused query to the temp table
INSERT #TempTable
EXEC sp_spaceused @TableName
--Get the next table name
FETCH NEXT FROM tableCursor INTO @TableName
END
--Get rid of the cursor
CLOSE tableCursor
DEALLOCATE tableCursor
--Select all records so we can use the reults
SELECT *
FROM #TempTable
ORDER BY tableName ASC
--Final cleanup!
DROP TABLE #TempTable
GO
viernes, 19 de noviembre de 2010
Buscar en el contenido de un stored procedure
SELECT Name,OBJECT_DEFINITION(OBJECT_ID) AS Code FROM sys.procedures WHERE OBJECT_DEFINITION(OBJECT_ID) LIKE '%cadena_de_busqueda%'
Suscribirse a:
Comentarios (Atom)