Team foundation Service, Agregando un nuevo proyecto

Hola a todos, hoy quisiera escribirles un pequeño y rápido tutorial de como agregar un proyecto TF Service, por si no lo sabían, el servicio en la nube es gratuito solo necesitas una cuenta Microsoft (lo que antes se conocía como Windows Live ID), aprovechen ingresen a https://tfspreview.com/ .

Una vez que ya tengan su cuenta creada, creen un team project, como sigue:

Elijan un nombre para su proyecto y listo:

 

Ahora vamos a conectarnos desde el Visual Studio 2012 RC, tal como sigue:

recuerden ingresar la cuenta como tal: en mi caso es https://alexsystem.tfspreview.com, seguro les pedirá loguearse háganlo con la cuenta que usaron en el TFS.

 

si ya se loguearon correctamente deben seleccionar el proyecto que acaban de crear desde la web del TFS, luego de eso cierren las ventas y verifiquen en la venta Team explorer que aparezca el proyecto conectado.

Ahora ingresa al solution explorer y mapea el workspace tal como muestra la imagen

Ahora en el visual Studio agregamos un nuevo proyecto y habilitamos la opción: Add to source control

Ahora verifiquen que el proyecto se agregue a la dirección correcta, en mi caso he creado una carpeta llamada ProyectWeb, esto es porque más adelante pienso agregar otros tipos de solución.

Ahora verifica que se haya agregado el proyecto correctamente en el team explorer

Hagan check in a la solución para publicar los cambios:

Ahora si queremos verificar que nuestra solución se a publicado correctamente el TF Service verifiquemos en la url de nuestra cuenta y naveguemos hasta la pestaña SOURCE.

Como vemos todo el código fuente de nuestro proyecto ahora en el TF Service.

Por ahora eso es todo, mas adelante les prometo un post utilizando Plantillas de Scrum  en TFS.

Chau

 

 

 

Visual Studio 2012 RC, un vistazo

Hola nuevamente a todos, luego de desinstalar el VS 11 beta acabo de instalar el visual studio 2012 RC, ya me estaba quedando sin echar har un vistazo :D.

Image

Hay algunas cosas que he observado en estos cuantos minutos probando, una de ellas es que la gestión del ciclo de vida del desarrollo de software es administrado por el TFS, toda la onda de App metro solo son compatibles con sistema operativo Windows 8 (recién me entero :D, yo tengo Windows 7); Seguiré revisando, en un próximo post ya les mostraré las nuevas características con más detalle iniciaré con el tema de Librería de clases portable.

Image

bueno me voy despidiendo, aquí les dejo el link para que vayan revisando lo nuevo de VS 2012.

http://msdn.microsoft.com/library/bb386063(v=vs.110)

Saludos.

Actualizar hotmail a Outlook

Hola nuevamente, no podía irme a dormir sin antes mostrarles como hacemos para probar outlook desde nuestra cuenta de hotmail.

  1. Nos logeamos a hotmail.com e ingresamos a la pestaña opciones en la parte superior derecha de nuestra bandeja de entrada:
  2. Nos muestra la siguiente ventana: 
  3.  Aprobamos el aviso y ya está nuestra bandeja con el estilo Metro. 
  4. Si  tu eres de las personas que no les gusta toda esta onda de Metro Style y quieres regresar al estilo clásico de hotmail pues solo clickeas en la pestaña opciones y luego en regresar a hotmail

bueno por ahora eso es todo, en el siguiente post les enseñare como actualizar su cuenta hotmail.com a outlook.com.

chau

Split en SQL Server

Hola nuevamente, para realizar ésta funcion no hay mucho que decir solo se utiliza las funciones de texto utlizando el delimitador.

CREATE FUNCTION dbo.fnSplit(
@sInputList VARCHAR(8000) — List of delimited items
, @sDelimiter VARCHAR(8000) = ‘,’ — delimiter that separates items
) RETURNS @List TABLE (item VARCHAR(8000))

BEGIN
DECLARE @sItem VARCHAR(8000)
WHILE CHARINDEX(@sDelimiter,@sInputList,0) <> 0
BEGIN
SELECT
@sItem=RTRIM(LTRIM(SUBSTRING(@sInputList,1,CHARINDEX(@sDelimiter,@sInputList,0)-1))),
@sInputList=RTRIM(LTRIM(SUBSTRING(@sInputList,CHARINDEX(@sDelimiter,@sInputList,0)+LEN(@sDelimiter),LEN(@sInputList))))

IF LEN(@sItem) > 0
INSERT INTO @List SELECT @sItem
END

IF LEN(@sInputList) > 0
INSERT INTO @List SELECT @sInputList — Put the last item in
RETURN
END
GO

–Test
select * from dbo.fnSplit(‘1,22,333,444,,5555,666’, ‘,’)
select * from dbo.fnSplit(‘1##22#333##444′,’##’)  –note second item has embedded #
select * from dbo.fnSplit(‘1 22 333 444  5555 666’, ‘ ‘)
Saludos.

AlexiSystem

E-books gratuitos – MICROSOFT

Hola después de mucho que puedo escribir les pido disculpas, trataré de hacerlo mas a menudo, hace un momento comentaba con mi amigo Jaime lo importante que es tener recursos gratuitos online, ya que al recibir un correo de IT capacitacion mencionaba la posibilidad de llevar cursos en http://www.capacitacionit.com/ que son buenos dicho sea de paso, sin embargo no todos tenemos la posibilidad de pagar muchos dólares :D, para ellos tenemos que ingeniar =) o mejor dicho navegar, buscar, etc. para poder encontrar recursos gratuitos,  aquí les comparto un link donde encontrarán muchos libros (e-books) gratuitos sobre lo último en tecnología microsoft.

 

KILL las conexiones activas – SQL Server

Hola nuevamente, despues de bastante tiempo que no posteo algo es porque hemos estado muy ocupados

Bueno,  seguramente a muchos nos ha pasado que cuando ejecutamos algún query en el SQL Server la respuesta no es inmediata o en muchos casos no responde,  y no sabemos porque puede estar pasando esto , seria bueno que demos un vistazo a los procesos que se estan ejecutando, (DB_ID) es el nombre de la base de datos donde queremos hacer la consulta, ejecutamos la siguiente consulta:

SELECT * FROM master..sysprocesses
WHERE dbid = DB_ID(‘DB_TEST)
AND spid != @@SPID

Como vemos la consulta nos muestra varios procesos que se están ejecutando en este momento, ahora si queremos eliminar algún proceso hacemos lo siguiente:
KILL 60

Esto eliminará el finalizará el proceso con spid = 60, si quieren eliminar todos los procesos pueden crear un store de la siguiente manera:

create PROCEDURE dbo.KillProcess
@dbName SYSNAME  
AS  
BEGIN  
SET NOCOUNT ON  
 
DECLARE @spid INT,  
@activas INT,  
@query VARCHAR(255)  
 
SELECT @spid = MIN(spid), @activas = COUNT(*)  
FROM master..sysprocesses  
WHERE dbid = DB_ID(@dbname)  
AND spid != @@SPID  
 
PRINT ‘Eliminando ‘+RTRIM(@activas)+’ procesos.’  

 
WHILE @spid IS NOT NULL  
BEGIN  
    PRINT ‘Eliminando el proceso ‘+ RTRIM(@spid)  
    SET @query = ‘KILL ‘+RTRIM(@spid)  
    EXEC(@query)  — Ejecutamos el query
    SELECT @spid = MIN(spid), @activas = COUNT(*)  
    FROM master..sysprocesses  
    WHERE dbid = DB_ID(@dbname) AND spid != @@SPID  
      
    PRINT RTRIM(@activas)+’ Procesos activos.’  
END 

Si luego ejecutamos el store, tendremos el resultado que los procesos se han eliminado.


Eso sería todo, por ahora .

Saludos

Alexi Espinoza

web 2.0 enfoque práctico

Tras revizar un poco más de información de lo normal sobre toda esta nueva onda de web 2.0, les comentaré lo siguiente.

Descrubrí que no es nada nuevo desde el 2004 entró e vigencia por uno de sus creadores: Tim O’Reilly, pero no les voy a hablar sobre historia, orígenes del términos etc. eso lo pueden encontrar con san google, bing, altavista, etc.

Lo que he notado y estoy de acuerdo con este concepto es que web 2.0 no es más que la forma de ver y desarrollar aplicaciones para internet, no es un cambio tecnológico ni nada de eso, es una forma diferente de ver las aplicaciones y como interactuar con nuestros usuarios, todo esto esta es una avalancha debido al incremento notable de usuarios que cuentan con internet en el hogar, trabajo o desde un dispotivivo móvil.

Los pilares de la llamada web 2.0 son la www (plataforma), las redes sociales, wikis, Blog, Video y tv online, entre otros que con llevan a entender que ya el usuario dejará de ser simple espectador de las paginas y aplicaciones web para convertirse en un usuario activo con capacidad de interactuar y dar su opinión.

Las redes sociales sin duda son forma mas avanzada de colaboracion con los usuarios, sin embargo resulta muy dificil asegurar que ésta sea un pilar notable en el mundo de web 2.0, les voy a explicar porque, si bien existen redes sociales que incrementan la productividad, creatividad y capacidad de interacción de los usuario, también hay otras que no cumplen con estas capacidades y además de no tener un contenido adecuado para el internauta.

Ahora queda en nosotros el poder aprovechar todo éste potencial dentro de nuesta organización, a nivel personal,  o también como una buena alternativa de mercado.

A continuación les dejo algunas páginas que les será de mucha ayuda si quieren ver ejemplos claros sobre lo que he mencionado.

Llamar a webservice desde javascript

Hola, despues de mucho de no postear, esta vez voy a hacer una demo de como llamar un servicio web desde el cliente (Javascript), Seguiremos los siguientes pasos:

  1. Agregamos un archivo .asmx a nuestro proyecto y verifiquen que en la cabecera este habilitado el ScriptService: [System.Web.Script.Services.ScriptService], como se observa en la siguiente figura del codigo del archivo llamado: WebService.asmx, observen también el WebMethod llamado HelloWord que luego vamos a llamar desde javascript.
    Webserice 

     

  2. Agregamos ahora a nuestro proyecto un Web form, a este le añadimos el control Scriptmanager y las funciones de javascript, la siguiente figura muestra como hacerlo.
    Archivo ASPX
  3. Explicaré los puntos importantes de la figura anterior, observen que hemos agregado un control HTML (button) que llama a la funcion getSaludo().- Observen que el control Scriptmanager tiene la referencia al Archivo Web Service (.asmx).
    – Luego implementamos la función de javascript que llama al webservice referenciado e invoca al método HelloWord, observen que este método devuelve un valor (result), la función FinishCallback se encargará de mostrarlo en alerta.

  4. Si todo resultó bién pasaremos a probar la aplicación.
    resultado

     

    Eso es todo, espero que les haya servido chau. 

     

    Saludos.

Generar DB desde Entity Framework en VS 2010

En esta oportunidad les presentaré un ejemplo pequeño pero muy practico, voy a generar codigo SQL apartir de un Entity Data Model en visual Studio 2010, pues bien comenzaré por decirles que no es tan dificil como parece.

Lo primero que tienen que hacer es crear un proyecto, puede ser una Libreria de clases o un proyecto web, luego agregan un nuevo item (Entity Data Model).

Luego escogeremos un modelo vacio tal como se muestra en la imagen.

Con la ayuda de nuestra barra de herramientas crearemos nuestras entidades, en este caso crearemos una entidad llamada: Alumno como se muestra en la imagen.

Luego de haber concluido nuestro modelo de entidades, vamos a generar el codigo SQL, para tener mas opciones de generación ahora con esta nueva version del Entity Framework necesitaremos instalar el (Entity Designer Database Power Pack). En este caso vamos a genera dando click derecho sobre el modelo luego ingresamos a la opcion: Generate database from model, y elejimos la primera opcion por defecto, luego de agregar la cadena de conexion a la Base de datos como corresponda, nos mostrará el codigo generado como la siguiente imagen:

Luego de agregar la conexión respectiva, continuaremos dando click en la opción Next, en seguida nos mostrará el codigo sql generado:

Finalizamos el asistente y ya tenemos generado la base de datos y nuestras tablas, podremos generar apartir de plantillas T-4 y otras opciones del Entity Designer Database Power Pack, pero ya será para otro post,

nos vemos,

Atte, Alexi Espinoza

Uso de @ in C#

Hace poco descrubrí sobre el @ en C# que además de servir para escribir variables y constantes en forma literal,  como por ejemplo: si queremos escribir tags htm en el codebehind de nuestra aplicación, como un div, <div id=»Master»></div>, no saltara error ya que las comillas (id=»Master») delimitan una cadena; paras solucionar esto usamos doble comillas y nuestro variable, y además el @ para especificar que es una sola cadena en forma literal, por lo tanto quedaria así.

System.Text.StringBuilder str = new System.Text.StringBuilder();
str.Append(@»<div id=»»Master»»></div>»);

Tambien encontré en las especificaciones de C#,  que las palabras reservadas se pueden convertir en identificadores si anteponemos el @.

class @class
{
public static void @static(bool @bool) {
if (@bool)
System.Console.WriteLine(«true»);
else
System.Console.WriteLine(«false»);
}
}.

Aunque creo que no es recomendable usarlos, sin embargo siempre es bueno tenerlo en cuenta.

saludos.