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.
<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>

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:

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);

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,
<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">
Del lado del servidor los servicios se encuentran entre los tags services y del lado del cliente dentro de los tags client.

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.000
Probado en SQL Server 2005