Páginas

30 de junio de 2015

¿Dónde se añaden los filtros globales en MVC 6 / ASP.NET 5?

ASP.NET MVCDesde la versión 3 de ASP.NET MVC, los filtros globales nos han solucionado con facilidad la anteriormente ardua labor de definir filtros en todos los controladores y acciones de nuestra aplicación sin tener que introducirlos uno a uno o crear controladores base.

Por convención, los registrábamos en una clase llamada FilterConfig, habitualmente ubicada en la carpeta /App_Start del proyecto, y cuya pinta era más o menos la siguiente:

Filtro global en MVC 5 y anteriores

Este código era llamado durante la inicialización de la aplicación desde el evento Application_Start() del archivo Global.asax:

Evento Application_Start()


Como sabemos, en MVC 6/ASP.NET 5 el Global.asax ha desaparecido para no volver, y, si profundizamos un poco, veremos que tampoco existe el tipo GlobalFilterCollection, ni la clase estática FilterConfig que antes daban soporte a esta característica.

¿Y a dónde ha ido a parar todo esto en el nuevo MVC 6? Pues, como era de esperar, al tratarse de algo que se realiza durante el arranque, su destino ha sido la clase Startup.

El método ConfigureServices() de esta clase es el punto desde el que se añaden los distintos servicios y componentes usados por la aplicación al sistema de resolución de dependencias de ASP.NET 5, pero, además, al tratarse de un punto muy inicial en la ejecución de la aplicación, lo usaremos también para establecer las configuraciones básicas de algunos componentes, como el framework MVC.

La forma de hacerlo es muy sencilla. En la siguiente porción de código se muestra cómo se añaden los servicios de MVC, y cómo seguidamente añadimos a la colección de filtros globales un filtro RequireHttps para obligar a que el acceso a nuestros controladores se realice siempre sobre el protocolo seguro HTTPS:

Añadiendo filtros globales en MVC 6

Ese método ConfigureMvc() que veis en el código anterior en recibe como parámetro una instancia de la clase MvcOptions, en cuyo interior encontraremos propiedades en las que podemos configurar muchos aspectos de MVC, como los binders, motores de vistas, filtros, proveedores de metadatos, etc. Recordad que en versiones anteriores del framework estas configuraciones se realizaban a través de clases estáticas globales, por lo que ahora queda todo mucho más ordenado y accesible :)

Publicado en Variable not found.


from Variable not found http://www.variablenotfound.com/2015/06/donde-se-anaden-los-filtros-globales-en.html
via IFTTT

28 de junio de 2015

Instalar KDE 5 en ArchLinux

En este post vamos a ver de forma rápida como instalar KDE 5 en ArchLinux.

Instalación básica

Lo primero sera instalar los paquetes del entorno de escritorio:
pacman -S Kf5 kf5-aids plasma-next
el gestor de pantalla kdm deja de ser compatible desde kde 5 así que instalaremos sddm.
pacman -S sddm
luego lo activamos:
systemctl enable sddm
reiniciamos
sudo reboot
ya tenemos una instalación básica pero le hacen falta algunos retoques.

Disponible Manjaro Cinnamon 0.8.13

Pantalla bienvenida manjaro cinnamon
Lo han vuelto a hacer. Esta vez con Cinnamon. El equipo de Manjaro Linux ha lanzado un escritorio más, ya tenían dos versiones (KDE y XFCE) y las comunitarias, esta vez han sacado un Cinnamon muy retocado como a ellos les gusta.
El lanzamiento oficial lo tienes aquí.

26 de junio de 2015

Medir la velocidad del HDD con dd

Hace algunos meses les dejé un artículo sobre cómo medir la velocidad del HDD con hdparm, pues bien en esta ocasión les mostraré cómo hacer lo mismo con: dd

wd-scorpio-black

Medir la velocidad de lectura y escritura del HDD con dd

Nos basta con un solo comando para saber esto, el comando es el siguiente:

dd if=/dev/zero of=test bs=64k count=16k conv=fdatasync

Básicamente lo que hará será crear y escribir en un archivo (llamado test) datos randoms, el peso final será de 1024MB, o sea, 1GB, y lo que nos dirá (y lo que realmente nos importa) será la velocidad con que llena esos 1024MB y el tiempo que le demoró.

Aquí dejo un screenshot de una terminal luego de ejecutar el comando:

dd-hdd-speed

Como ven, demoró en llenar ese GB en 9 segundos, lo cual significa que la velocidad fue de 119 MB/s … nada mal ;)

¿Cómo sé si mi HDD es lento?

Básicamente, cualquier velocidad mayor a 50 MB/s es aceptable (repito, aceptable, no super rápido), mi PC de escritorio con un HDD normal me dió 70 MB/s. Eso sí, si se trata de un SSD o un RAID ya la velocidad “aceptable” no es la misma :D

Fin!

Básicamente esto es todo, espero les haya sido de utilidad.



from Desde Linux http://feedproxy.google.com/~r/UsemosLinux/~3/iRFlVUoy0To/
via IFTTT

Atom 1.0 disponible para descargar

Desde hace bastante tiempo estoy usando para trabajar como FrontEnd dos editores de texto bastante famosos, me estoy refiriendo a Sublime Text y Brackets, siendo este último el que uso de forma predeterminada.
En su momento había probado versiones previas de Atom y nunca me convenció. Era bastante lento, su auto-completado de código era ineficiente y carecía de muchísimas opciones, sin embargo, con la versión 1.0, disponible hace un par de días, el panorama ha cambiado y mucho.
Atom-Editor

¿Qué nos trae Atom?

Como ya mencioné, una de las cosas que más me molestaba de las versiones previas de Atom era su triste y decadente auto-completado de código, pero en esta versión ha mejorado muchísimo gracias a autocomplete-plus, el cual viene instalado en forma de paquete.
autocomplete-plus
Otros paquetes que se incluyen y que hacen de Atom un editor bastante potente son go-plus, para potenciar el lenguaje creado por Google, atom-typescript para un completo soporte de TypeScritp el lenguaje de programación libre de Microsoft y omnisharp-atom, para C# y .Net.

Como pasar fotos, videos, musica y contactos por WIFI

Hola nuevamente y bienvenidos a DesdeFirefoxOS.

Antes de empezar con el artículo, los administradores y de escritores de este sitio queremos pedirles disculpas por tener el blog inactivo por un periodo tan prolongado de tiempo, pero eso ya pasó y trataremos de volver a traer un post diario 😀

Ahora si comenzamos con el artículo, el cual encuentro muy interesante y por eso se los traje aquí. Como bien dice el título, hoy les hablare de como pasar información de multimedia de un dispositivo con FirefoxOS a un ordenador que use como navegador web Firefox por WIFI.

Para pasar fotos, videos, música y hasta los propios contactos por WIFI:

Necesitamos como requisitos:

  • Celular con FirefoxOS 1.3 o superior.
  • Ordenador con Firefox 28.0 o superior.
  • Conexión a Internet en la misma red en ambos dispositivos.

 

Ya mencionado los requisitos, disfruten de procedimiento:

 

1.- Instalar esta app en tu  teléfono celular con FirefoxOS.

Captura de pantalla de 2015-06-23 17-00-17

2.- Instalar esta extensión de Firefox en tu computadora.

screenshots_2015-06-23-17-02-57

3.- Abrir la app de  PC Sync en tu celular.

Captura de pantalla de 2015-06-23 17-03-42

4.- Darle click a este icono (si no aparece el icono da click aquí).

Captura de pantalla de 2015-06-23 17-12-13

5.- El numero que te apareció en el celular tienes que introducirlo aquí y posteriormente dale en el botón <Connect>.

screenshots_2015-06-23-17-15-07

6.- En el móvil te tiene que aparecer una ventana igual a esta, tienes que darle click en “Allow”.

Captura de pantalla de 2015-06-23 17-17-03

7.- Si todo salio bien te tiene que salir una descripción de tu celular en el navegador como esta.

Captura de pantalla de 2015-06-23 17-17-03

8.- En la parte de la izquierda hay una barra como diferentes apartados del teléfono con los que podemos interactuar.

Captura de pantalla de 2015-06-23 17-23-21

9.- Como ejemplo voy a importar y exportar una foto, para eso le damos click en apartado de “Gallery”, en cuanto le demos click empezaran a aparecer todas las fotos e imágenes que tengamos en nuestro celular organizadas por la fecha.

Captura de pantalla de 2015-06-23 17-26-40

10.- Como prueba voy a exportar 3 fotos de mi celular, para eso las tengo que seleccionar dándole click a la checkbox que tiene en la parte superior-derecha cada una de las fotos o puedes seleccionar todo un grupo de imágenes dándole click a la checkbox que tiene a un lado la fecha. Yo elegiré estas 3.

Captura de pantalla de 2015-06-23 17-26-40

11.- Después simplemente tienes que darle click al botón de que se encuentra en la parte superior de la pagina.

Captura de pantalla de 2015-06-23 17-31-41

12.- Y luego nada mas seleccionar el lugar a donde quieres que las exporte.

Captura de pantalla de 2015-06-23 17-36-19

13.- Y listo!!!!! después empezara la exportación de fotos 😀 así de fácil es exportar fotos. Ahora haré otro ejemplo importando fotos de la PC al celular.

Captura de pantalla de 2015-06-23 17-23-21

14.- Hacer una importación de fotos es igual de fácil, primero le tenemos que dar click al botón de que se encuentra en la parte superior de la pagina.

Captura de pantalla de 2015-06-23 17-40-18

15.- Seleccionamos la foto o fotos que queramos exportar y damos click en “abrir”, en cuanto hagamos eso empezara la importación.

Captura de pantalla de 2015-06-23 17-42-11

screenshots_2015-06-23-17-44-40

16.- Y listo!!! ya estará en segundos nuestra foto en la galería del celular.

Si en lugar de querer importar y/o exportar fotos quieres hacerlo con videos, música o contactos se hacen de manera similar 😀

La único que le falta a esta app para ser perfecta es que se puedan exportar y/o importar toda clase de archivos, desde PDF’s, archivos de texto o archivos comprimidos pero ignorando eso es una aplicación genial e imprescindible.

Espero que les haya gustado y les haya sido útil, adiós 😀 .

The post Como pasar fotos, videos, musica y contactos por WIFI appeared first on Desde FirefoxOS.



from Desde FirefoxOS http://www.desdefirefoxos.net/pasar-fotos-videos-musica-contactos-wifi/
via IFTTT

24 de junio de 2015

Comandos Básicos de Git

Fuente: http://jonas.nitro.dk/git/quick-reference.html

a) Buscando Ayuda:
1. git help comando ó git comando --help
    Muestra la ayuda para ese comando

b) Creación de un repositorio:
2. git init
    Crea un repositorio en el directorio actual
3. git clone url
    Clona un repositorio remoto dentro de un directorio

c) Operaciones sobre Archivos:
4. git add path
    Adiciona un archivo o un directorio de manera recursiva
5. git rm ruta
    Remueve un archivo o directorio del árbol de trabajo
      -f : Fuerza la eliminación de un archivo del repositorio
6. git mv origen destino
    Mueve el archivo o directorio a una nueva ruta
      -f : Sobre-escribe los archivos existentes en la ruta destino
7. git checkout [rev] archivo
    Recupera un archivo desde la rama o revisión actual
      -f : Sobre-escribe los cambios locales no guardados

d) Trabajando sobre el código:
8. git status
    Imprime un reporte del estado actual del árbol de trabajo local
9. git diff [ruta]
    Muestra la diferencia entre los cambios en el árbol de trabajo local
10. git diff HEAD ruta
    Muestra las diferencias entre los cambios registrados y los no registrados
11. git add path
    Selecciona el archivo para que sea incluido en el próximo commit
12. git reset HEAD ruta
    Marca el archivo para que no sea incluido en el próximo commit
13. git commit
    Realiza el commit de los archivos que han sido registrados (con git-add)
      -a : Automáticamente registra todos los archivos modificados
14. git reset --soft HEAD^
    Deshace commit & conserva los cambios en el árbol de trabajo local
15. git reset --hard HEAD^
    Restablece el árbol de trabajo local a la versión del ultimo commit
16. git clean
    Elimina archivos desconocidos del árbol de trabajo local

e) Examinando el histórico:
17. git log [ruta]
    Muestra el log del commit, opcionalmente de la ruta especifica
18. git log [desde [..hasta]]
    Muestra el log del commit para un rango de revisiones dado
      --stat : Lista el reporte de diferencias de cada revisión
      -S'pattern' : Busca el historial de cambios que concuerden con el patrón de búsqueda
19. git blame [archivo]
    Muestra el archivo relacionado con las modificaciones realizadas

f) Repositorios remotos:
20. git fetch [remote]
    Trae los cambios desde un repositorio remoto
21. git pull [remote]
    Descarga y guarda los cambios realizados desde un repositorio remoto
22. git push [remote]
    Guarda los cambios en un repositorio remoto
23. git remote
    Lista los repositorios remotos
24. git remote add remote url
    Añade un repositorio remoto a la lista de repositorios registrados

g) Ramas:
25. git checkout rama
    Cambia el árbol de trabajo local a la rama indicada
      -b rama : Crea la rama antes de cambiar el árbol de trabajo local a dicha rama
26. git branch
    Lista las ramas locales
27. git branch -f rama rev
    Sobre-escribe la rama existente y comienza desde la revisión
28. git merge rama
    Guarda los cambios desde la rama
h) Exportando e importando:
29. git apply - < archivo
    Aplica el parche desde consola (stdin)
30. git format-patch desde [..hasta]
    Formatea un parche con un mensaje de log y un reporte de diferencias (diffstat)
31. git archive rev > archivo
    Exporta resumen de la revisión (snapshot) a un archivo
      --prefix=dir/ : Anida todos los archivos del snapshot en el directorio
      --format=[tar|zip] : Especifica el formato de archivo a utilizar: tar or zip

i) Etiquetas:
32. git tag name [revision]
    Crea una etiqueta para la revisión referida
      -s : Firma la etiqueta con su llave privada usando GPG
      -l [patrón] : Imprime etiquetas y opcionalmente los registros que concuerden con el patrón de busqueda

j) Banderas de Estado de los Archivos:
M (modified) : El archivo ha sido modificado
C (copy-edit) : El archivo ha sido copiado y modificado
R (rename-edit) : El archivo ha sido renombrado y modificado
A (added) : El archivo ha sido añadido
D (deleted) : El archivo ha sido eliminado
U (unmerged) : El archivo presenta conflictos después de ser guardado en el servidor (merge)

Chromium añade un binario de código cerrado en su última actualización

Todos sabemos y estamos conscientes de la importancia de la privacidad en el mundo actual, empresas como Google, Facebook, Microsoft, entre otras, siempre están en el punto de mira por estos motivos. Lo importante no es si usamos o no un producto de alguna de estas empresas, lo importante es saber en todo momento que información estamos ofreciendo.
En el caso de Google, muchos usuarios saben que al usar Google Chrome estamos expuestos a que violen nuestra privacidad de diversas maneras, y la solución que normalmente se emplea, es usar Chromium, el navegador que sirve como base para Chrome y se supone, respeta un poco más nuestra privacidad.

23 de junio de 2015

Inyección de dependencias en filtros MVC 6

ASP.NET MVCLos filtros de MVC, o action filters, han sido potenciados en la versión 6 del framework añadiéndoles características que en versiones anteriores no estaban disponibles de serie en la plataforma pero que han sido muy solicitadas por los desarrolladores. Hace algún tiempo vimos una de ellas, los filtros asíncronos, y hoy veremos que la inyección de dependencias en filtros también es ya una realidad.

22 de junio de 2015

Disponible Mageia 5

Mageia 5

Después de un año de desarrollo por fin sale la nueva versión de Mageia, señoras y señores.

Su principal novedad es el soporte para UEFI, la cual conllevó a muchos cambios en su instalador, entre otras cosas el soporte para RAID y la integración con GRUB 2. A esto se le suma que viene con el kernel 3.19.8, Xorg 1.16.4, KDE 4.14.3, GNOME 3.14, Cinnamon 2.4.5, MATE 1.8.0, XFCE 4.12, LXQt 0.9.0, Plasma 5.1.2, LibreOffice 4.4.2.2 y Firefox ESR 31.7.0 (pronto actualizable a la versión ESR 38). ¿Qué Dicen?

Descargar Mageia 5



from Desde Linux http://feedproxy.google.com/~r/UsemosLinux/~3/VCByJ0Ris38/
via IFTTT