<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>
Blog con recordatorios de soluciones a problemas específicos que me encontré desarrollando software.
Mostrando entradas con la etiqueta Tips. Mostrar todas las entradas
Mostrando entradas con la etiqueta Tips. Mostrar todas las entradas
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 }
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%'
miércoles, 17 de noviembre de 2010
Obtener stored procedures modificados en los ultimos n dias.
Ejemplo para 7 dias:
SELECT name,modify_date FROM sys.objects WHERE type = 'P' AND DATEDIFF(D,modify_date, GETDATE()) < 7 ORDER BY modify_date DESC
sábado, 23 de octubre de 2010
Creando o modificando datos con SQLite
SQLite posee un comando que permite en una sola sentencia crear o modificar datos de una tabla, con la condición que posea una clave primaria o indice único (esto ultimo lo tengo que verificar)
Ejemplo:
Ejemplo:
var parameters = new List<sqliteparameter> { new SQLiteParameter("campo1", "valorCampo1"), new SQLiteParameter("campo2", "valorCampo2"), new SQLiteParameter("campo3", "valorCampo3"), new SQLiteParameter("campo4", "valorCampo4"), new SQLiteParameter("campo5", "valorCampo5"), new SQLiteParameter("Fecha", DateTime.Now) }; var query = new StringBuilder(); query.AppendLine("INSERT OR REPLACE INTO "); query.AppendLine("Tabla(campo1,campo2,campo3,campo4,campo5,Fecha) "); query.AppendLine("VALUES(@campo1,@campo2,@campo3,@campo4,@campo5,@Fecha)"); return query.ToString();
sábado, 3 de julio de 2010
Obtener datos de una planilla excel usando un OleDbDataAdapter
Requisitos:
La planilla debe estar guardada en formato excel 2003, el nombre de la hoja no debe superar los 8 caracteres.
var file = @"F:\1.xls";
var cs = string.Format("Provider=Microsoft.Jet.OLEDB.4.0; data source={0}; Extended Properties='Excel 8.0;HDR=NO;IMEX=1;'", file);
La planilla debe estar guardada en formato excel 2003, el nombre de la hoja no debe superar los 8 caracteres.
var file = @"F:\1.xls";
var cs = string.Format("Provider=Microsoft.Jet.OLEDB.4.0; data source={0}; Extended Properties='Excel 8.0;HDR=NO;IMEX=1;'", file);
var adapter = new OleDbDataAdapter("SELECT * FROM [Hoja1$]", cs);
var ds = new DataSet();
adapter.Fill(ds);
DataTable data = ds.Tables[0];
foreach (DataRow dr in data.Rows)
{
//Hago algo con los datos
}
sábado, 30 de mayo de 2009
Configurando WCF sin autenticacion
Quitar la autenticación nos permite realizar pruebas de funcionalidad sobre el servicio, ya que es la forma mas simple de configurarlo.
Para hacerlo configuramos el servicio en modo de seguridad None, desactivando la seguridad el endpoint a través de un binding que tenga el modo de seguridad en None).
Agregar dentro de la colección bindings lo siguiente,
Del lado del servidor los servicios se encuentran entre los tags services y del lado del cliente dentro de los tags client.
Para hacerlo configuramos el servicio en modo de seguridad None, desactivando la seguridad el endpoint a través de un binding que tenga el modo de seguridad en None).
Agregar dentro de la colección bindings lo siguiente,
<basicHttpBinding> <binding name="httpconfig" > <security mode="None"></security> </binding> </basicHttpBinding> </bindings>y modificar el del servicio de esta forma
<endpoint address="" binding="basicHttpBinding" contract="UpdateService.IUpdateService" bindingConfiguration="httpconfig">
viernes, 29 de mayo de 2009
Como poner en cero la parte de hora de una variable o columna en SQL Server
DATEADD(dd, 0, DATEDIFF(dd, 0, **FECHA**))Da como resultado:
SELECT GETDATE() 2009-05-29 16:07:18.373 SELECT DATEADD(dd, 0, DATEDIFF(dd, 0, GETDATE())) 2009-05-29 00:00:00.000Probado en SQL Server 2005
Suscribirse a:
Entradas (Atom)