Usar SQL en Entity Framework
Hay distintas posibilidades, a continuación se expondrán algunas de ellas:
1 – Se puede utilizar el método ExecuteStoreQuery para lanzar queries contra el origen de datos:
using (SchoolEntities context = new SchoolEntities()) { // Use the parameter substitution pattern. foreach (string name in context.ExecuteStoreQuery< string > ("Select Name from Department where DepartmentID < {0}", 5)) { Console.WriteLine(name); } // Use parameter syntax with object values. foreach (string name in context.ExecuteStoreQuery< string > ("Select Name from Department where DepartmentID < @p0", 5)) { Console.WriteLine(name); } // Use an explicit SqlParameter. foreach (string name in context.ExecuteStoreQuery< string > ("Select Name from Department where DepartmentID < @p0", new SqlParameter { ParameterName = "p0", Value = 5 })) { Console.WriteLine(name); } }
2 - Otra forma sería usar el método translate para convertir un DbDataReader en (siguiente el ejemplo anterior) objetos del tipo Department.
3 - También tenemos el método ExecuteStoreCommand, que permite ejecutar comandos directamente contra el origen de datos: insert, update,...
4 - Otra posibilidad que nos permite Entity Framework consiste en crear una EntityConnection para usar un EntityCommand
NorthwindEntities context = new NorthwindEntities(); EntityConnection conn = new EntityConnection(context.Connection.ConnectionString); conn.Open(); var sql = "SELECT VALUE emp FROM NorthwindEntities.Employees AS emp"; EntityCommand cmd = new EntityCommand(sql, conn); DbDataReader reader = cmd.ExecuteReader(CommandBehavior.SequentialAccess); while (reader.Read()) { Console.WriteLine("{0} {1} {2} {3}", reader["EmployeeID"], reader["LastName"], reader["FirstName"], reader["Country"]); }
Fuentes:
Cómo: Ejecutar directamente comandos contra el origen de datos en .Net Framework 4
Cómo ejecutar una consulta de Entity SQL parametrizada con EntityCommand
LINQ to Objects
Gracias a «LINQ to Objects» podemos hacer consultas LINQ directamente sobre cualquier colección IEnumerable o IEnumerable
Un ejemplo de uso podría ser el que muestro a continuación:
IEnumerable< Persona > persona = from p in personas.AsEnumerable() where p.Name.StartsWith("S") orderby p.Name select p;
Se realiza una consulta sobre una lista de personas que me devuelve todas aquellas personas cuyo nombre comienza por la letra S. Además, realiza una ordenación por nombre.
Persona: sería una clase con p.e. las propiedades Name, Apellidos, Edad.
List
Además, si se quiere se podría hacer algo mas amigable la consulta. Para por ejemplo no tener que escribir consultas muy grandes.
Func< Persona, bool > func = delegate(Persona person){ return person.Name.StartsWith("S"); } IEnumerable< Persona > persona = (from p in personas.AsEnumerable() select p) .Where(func) .OrderBy< Persona, string >(per => per.Name);
Aquí se realiza exactamente lo mismo que antes, con la diferencia de que he creado una función para evaluar las condiciones del Where (está función debe tener como mínimo un objeto de entrada y debe devolver bool).
En el ejemplo he utilizado un Where sobre una IEnumerable pero también se podría hacer lo mismo para IQueryable, usando Exressions en este caso.
public static IQueryable< TSource > Where< TSource >( this IQueryable< TSource > source, Expression< Func < TSource, bool > > predicate ) public static IEnumerable< TSource > Where< TSource >( this IEnumerable< TSource > source, Func< TSource, bool > predicate )
Lista de plugins para utilizar en el firefox
1. – Video DownloadHelper
La manera fácil de descargar y convertir vídeos de cientes de sitios similares a YouTube.
También funciona para audio y galerías de imágenes.
2. – Firebug
SFirebug se integra con Firefox para poner una gran cantidad de herramientas de desarrollo a su alcance mientras navegas. Usted puede editar, depurar y monitorear CSS, HTML y JavaScript en vivo en cualquier página web …
3. – Greasemonkey
Este plugin te permite Personalizar la forma en que una página web muestra o se comporta, mediante el uso de pequeños fragmentos de JavaScript.
4. – CacheViewer Continued
Se trata de un plugin para Firefox que permite interactuar con la caché del navegador de forma sencilla. Con CacheViewer Continued puede previsualizar las imágenes, ver los detalles de las entradas de caché, guardar los archivos de la memoria caché en otro lugar, y eliminar los archivos de la caché.
5. – FoxyProxy Standard
FoxyProxy es una extensión Firefox que cambia entre uno o más proxies automáticamente, en base a patrones de la URL. Dicho de otra manera, FoxyProxy automatiza el proceso manual de modificar los parámetros de las Propiedades de Conexión de Firefox. El cambio de servidor proxy depende de la página a cargar y de las reglas de selección definidas por el usuario.
Ampliar tamaño del disco duro en el vmware
Ir a las opciones del disco duro en el vmware, click en «utilities/expand» y añadir el nuevo tamaño deseado para el disco.
A continuación dependiendo de si es un disco de sistema o no hay que proceder de la siguiente manera:
1 – Disco del sistema.
1.1 – realizar una copia del disco p.e. «Windows XP Professional.vmdk».
1.2 – Agregar esa copia a otra máquina vmware. (agregar nuevo disco y seleccionarlo dando en usar uno existente)
1.3 – Arrancar esta otra máquina, ir a la consola de msdos y ejecutar:
DISKPART list volume select volume X (X es el número del volumen a expandir) expand
1.4 – Apagar para, a continuación, poner este disco en lugar del original de la primera máquina.
1.5 – Si todo va bien arrancará windows y pedirá un reinicio.
2 – Disco que no es del sistema. (En este caso no hace falta utilizar una máquina secundaria.)
2.1 – Arrancar la máquina, ir a la consola de msdos y ejecutar:
DISKPART list volume select volume X (X es el número del volumen a expandir) expand
Editar archivos *.swf
Para realizar modificaciones en los archivos *.swf se puede realizar lo siguiente:
1 – En primer lugar nos instalamos la herramienta Sothink SWF Decompiler (Se puede descargar aquí).
2 – Con Sothink SWF debemos abrir los archivos swf que deseamos modificar y los exportamos con extensión *.Fla.
3 – Ahora necesitamos instalar la herramienta Adobe Flash CS3 (si no queremos instalarla hay por la red disponibles versiones portables aquí).
4 – Con Adobe Flash CS3 podemos abrir los archivos con extensión *.fla, para proceder a modificarlos y posteriormente exportarlos nuevamente como película (*.swf).
Adobe Livecycle para Distribuir Formularios con Acrobat
Se pueden crear formularios utilizando la herramienta Adobe Livecycle Designer y distribuirlos a través de acrobat.com.
1 – Crear el formulario en la herramienta.
2 – Ir a archivo/distribuir formulario. Seleccionar recopilar las respuestas con acrobat.com.
3 – Rellenar datos del destinatario.
4 – El formulario llegará en formato pdf al destinatario. Podrá abrirlo con el adobe reader y rellenar los distintos campos.
5 – Una vez rellenado procederá a enviarlo. Para ello tienen un botón de enviar en la parte superior derecha del pdf.
Video Explicativo
7 pasos para convertir una Fotografía en un Dibujo. Utilizando Photoshop
Paso 1. Duplicar capa.
Paso 2. Seleccionar esta nueva capa y ejecutar Control + I (también valdría hacer click en: imagen > ajustes > invertir).
Paso 3. Sobreexponer color a la capa.
Paso 4. Desenfocarla utilizando un filtro: filtro > desenfocar > desenfoque gaussiano (basta con poner un radio de 4 pixeles).
Paso 5. Click sobre el icono de «crear nueva capa de relleno y ajuste» y seleccionar Blanco/Negro.
Paso 6. Click sobre el icono de «crear nueva capa de relleno y ajuste» y seleccionar Tonos/Saturación (Bajar la saturación al mínimo).
Paso 7. Por último, click sobre el icono de «crear nueva capa de relleno y ajuste» y seleccionar Niveles (dejarla al gusto).
Carácteres Unicode
Code | Result | Description |
---|---|---|
C1 Controls | ||
U+0080 | PAD – Padding Character | |
U+0081 | HOP – High Octet Preset | |
U+0082 | BPH – Break Permitted Here | |
U+0083 | NBH – No Break Here | |
U+0084 | IND – Index | |
U+0085 | NEL – Next Line | |
U+0086 | SSA – Start of Selected Area | |
U+0087 | ESA – End of Selected Area | |
U+0088 | HTS – Character (Horizontal) Tabulation Set | |
U+0089 | HTJ – Character (Horizontal) Tabulation with Justification | |
U+008A | LTS – Line (Vertical) Tabulation Set | |
U+008B | PLD – Partial Line Forward (Down) | |
U+008C | PLU – Partial Line Backward (Up) | |
U+008D | RI – Reverse Line Feed (Index) | |
U+008E | SS2 – Single-Shift Two | |
U+008F | SS3 – Single-Shift Three | |
U+0090 | DCS – Device Control String | |
U+0091 | PU1 – Private Use 1 | |
U+0092 | PU2 – Private Use 2 | |
U+0093 | STS – Set Transmit State | |
U+0094 | CCH – Cancel character | |
U+0095 | MW – Message Waiting | |
U+0096 | SPA – Start of Protected Area | |
U+0097 | EPA – End of Protected Area | |
U+0098 | SOS – Start of String | |
U+0099 | SGCI – Single Graphic Character Introducer | |
U+009A | SCI – Single Character Introducer | |
U+009B | CSI – Control Sequence Introducer | |
U+009C | ST – String Terminator | |
U+009D | OSC – Operating System Command | |
U+009E | PM – Private Message | |
U+009F | APC – Application Program Command | |
Latin-1 Punctuation and Symbols | ||
U+00A0 | Non-breaking space | |
U+00A1 | ¡ | Inverted Exclamation Mark |
U+00A2 | ¢ | Cent sign |
U+00A3 | £ | Pound sign |
U+00A4 | ¤ | Currency sign |
U+00A5 | ¥ | Yen sign |
U+00A6 | ¦ | Broken bar |
U+00A7 | § | Section sign |
U+00A8 | ¨ | Diaeresis |
U+00A9 | © | Copyright sign |
U+00AA | ª | Feminine Ordinal Indicator |
U+00AB | « | Left-pointing double angle quotation mark |
U+00AC | ¬ | Not sign |
U+00AD | Soft hyphen | |
U+00AE | ® | Registered sign |
U+00AF | ¯ | Macron |
U+00B0 | ° | Degree symbol |
U+00B1 | ± | Plus-minus sign |
U+00B2 | ² | Superscript two |
U+00B3 | ³ | Superscript three |
U+00B4 | ´ | Acute accent |
U+00B5 | µ | Micro sign |
U+00B6 | ¶ | Pilcrow sign |
U+00B7 | · | Middle dot |
U+00B8 | ¸ | Cedilla |
U+00B9 | ¹ | Superscript one |
U+00BA | º | Masculine ordinal indicator |
U+00BB | » | Right-pointing double-angle quotation mark |
U+00BC | ¼ | Vulgar fraction one quarter |
U+00BD | ½ | Vulgar fraction one half |
U+00BE | ¾ | Vulgar fraction three quarters |
U+00BF | ¿ | Inverted Question Mark |
Letters | ||
U+00C0 | À | Latin Capital Letter A with grave |
U+00C1 | Á | Latin Capital letter A with acute |
U+00C2 | Â | Latin Capital letter A with circumflex |
U+00C3 | Ã | Latin Capital letter A with tilde |
U+00C4 | Ä | Latin Capital letter A with diaeresis |
U+00C5 | Å | Latin Capital letter A with ring above |
U+00C6 | Æ | Latin Capital letter AE |
U+00C7 | Ç | Latin Capital letter C with cedilla |
U+00C8 | È | Latin Capital letter E with grave |
U+00C9 | É | Latin Capital letter E with acute |
U+00CA | Ê | Latin Capital letter E with circumflex |
U+00CB | Ë | Latin Capital letter E with diaeresis |
U+00CC | Ì | Latin Capital letter I with grave |
U+00CD | Í | Latin Capital letter I with acute |
U+00CE | Î | Latin Capital letter I with circumflex |
U+00CF | Ï | Latin Capital letter I with diaeresis |
U+00D0 | Ð | Latin Capital letter Eth |
U+00D1 | Ñ | Latin Capital letter N with tilde |
U+00D2 | Ò | Latin Capital letter O with grave |
U+00D3 | Ó | Latin Capital letter O with acute |
U+00D4 | Ô | Latin Capital letter O with circumflex |
U+00D5 | Õ | Latin Capital letter O with tilde |
U+00D6 | Ö | Latin Capital letter O with diaeresis |
Mathematical Operator | ||
U+00D7 | × | Multiplication sign |
Letters | ||
U+00D8 | Ø | Latin Capital letter O with stroke |
U+00D9 | Ù | Latin Capital letter U with grave |
U+00DA | Ú | Latin Capital letter U with acute |
U+00DB | Û | Latin Capital Letter U with circumflex |
U+00DC | Ü | Latin Capital Letter U with diaeresis |
U+00DD | Ý | Latin Capital Letter Y with acute |
U+00DE | Þ | Latin Capital Letter Thorn |
U+00DF | ß | Latin Small Letter sharp S |
U+00E0 | à | Latin Small Letter A with grave |
U+00E1 | á | Latin Small Letter A with acute |
U+00E2 | â | Latin Small Letter A with circumflex |
U+00E3 | ã | Latin Small Letter A with tilde |
U+00E4 | ä | Latin Small Letter A with diaeresis |
U+00E5 | å | Latin Small Letter A with ring above |
U+00E6 | æ | Latin Small Letter AE |
U+00E7 | ç | Latin Small Letter C with cedilla |
U+00E8 | è | Latin Small Letter E with grave |
U+00E9 | é | Latin Small Letter E with acute |
U+00EA | ê | Latin Small Letter E with circumflex |
U+00EB | ë | Latin Small Letter E with diaeresis |
U+00EC | ì | Latin Small Letter I with grave |
U+00ED | í | Latin Small Letter I with acute |
U+00EE | î | Latin Small Letter I with circumflex |
U+00EF | ï | Latin Small Letter I with diaeresis |
U+00F0 | ð | Latin Small Letter Eth |
U+00F1 | ñ | Latin Small Letter N with tilde |
U+00F2 | ò | Latin Small Letter O with grave |
U+00F3 | ó | Latin Small Letter O with acute |
U+00F4 | ô | Latin Small Letter O with circumflex |
U+00F5 | õ | Latin Small Letter O with tilde |
U+00F6 | ö | Latin Small Letter O with diaeresis |
Mathematical Operator | ||
U+00F7 | ÷ | Division sign |
Letters | ||
U+00F8 | ø | Latin Small Letter O with stroke |
U+00F9 | ù | Latin Small Letter U with grave |
U+00FA | ú | Latin Small Letter U with acute |
U+00FB | û | Latin Small Letter U with circumflex |
U+00FC | ü | Latin Small Letter U with diaeresis |
U+00FD | ý | Latin Small Letter Y with acute |
U+00FE | þ | Latin Small Letter Thorn |
U+00FF | ÿ | Latin Small Letter Y with diaeresis |
Incrementar días a una fecha con javascript
Código que muestra una función que devuelve la fecha actual aumentada o disminuida en días dependiendo de los días recibidos como parámetro.
/** * Funcion que devuelve fecha actual y fecha modificada n dias * Tiene que recibir el numero de dias en positivo o negativo para * sumar o restar a la fecha actual. * Ejemplo: * mostrarFecha(-10) => restara 10 dias a la fecha actual * mostrarFecha(30) => añadira 30 dias a la fecha actual */ function mostrarFecha(days){ fecha=new Date(); day=fecha.getDate(); month=fecha.getMonth()+1; year=fecha.getFullYear(); document.write("Fecha actual: "+day+"/"+month+"/"+year); tiempo=fecha.getTime(); milisegundos=parseInt(days*24*60*60*1000); total=fecha.setTime(tiempo+milisegundos); day=fecha.getDate(); month=fecha.getMonth()+1; year=fecha.getFullYear(); document.write("Fecha modificada: "+day+"/"+month+"/"+year); }
JSBin, JSBeautifier y JSFiddle
JSBin es un servicio online que nos permite introducir código HTML, CSS y JavaScript y verificar su funcionamiento. Está pensado para que los desarrolladores puedan trabajar de manera colaborativa.
En http://jsbin.com podemos editar sin dificultades, incluir alguna de las librerías más comunes e incluso, guardar la URL del proyecto y hacerla pública. (Más info.)
JSBeautifier, te organiza y modifica estéticamente tu código Javascript, de modo que este sea más placentero a la vista y siga estándares de formatos de programación.
JSFiddle, potente herramienta para Javascript y frameworks como JQuery y Prototype.js
Al igual que as anteriores se trata de una herramienta 100% web. Lo que JSFiddle te ofrece es un ambiente de varias ventanas dentro de tu navegador web, en donde en una de ellas puedes escribir HTML, y en otra sentencias de Javascript (como por ejemplo, selectores de JQuery), y después en otra ventana ves el resultado.
Con JSFiddle eliges la versión de la librería que deseas, copias un pedazo de HTML (o utilizas el que te ofrecen por defecto), lo modificas, y escribes tu Javascript para ver si hace lo que esperas que hagas, y listo. Varios minutos se reducen a segundos.
Categorias
- adobe (2)
- agile (1)
- Alfresco (1)
- Android (26)
- Angular (6)
- angularjs (10)
- apache (1)
- axis (2)
- Bases de datos (14)
- Bootstrap (1)
- C# (3)
- Cámara (1)
- chrome (3)
- Codeigniter (2)
- Control de Versiones (2)
- CSS (25)
- CVS (1)
- Django (9)
- Django Rest Framework (1)
- DNS (1)
- Docker (3)
- dominio (1)
- eclipse (5)
- Entity Framework (2)
- ETL (1)
- Firefox (6)
- flash (1)
- freecad (1)
- Git (12)
- GitHub (4)
- gpg (2)
- Groovy (1)
- Handlebars (1)
- hibernate (4)
- hosting (1)
- HTML (50)
- HTML 5 (26)
- Impresión 3D (9)
- Inkscape (1)
- IOS (2)
- ireports (3)
- Java (44)
- Javascript (55)
- JBoss (5)
- JPA (2)
- JQuery (20)
- Json (7)
- JSP (6)
- Keycloak (1)
- Lamp (1)
- LDAP (2)
- lean (1)
- linkedin (1)
- LINQ (1)
- linux (13)
- Livecycle (1)
- log (1)
- microcontroladores (1)
- MongoDB (4)
- MySQL (8)
- Node.js (5)
- OC4J (1)
- Openshift (2)
- Oracle (6)
- Patrones de Diseño (1)
- Photoshop (2)
- php (20)
- PostgreSQL (1)
- python (19)
- rabbitmq (1)
- Raspberry PI (13)
- Raspherry PI (5)
- React (6)
- seguridad (3)
- Selenium (3)
- Sencha Touch (1)
- Sin categoría (29)
- Spring (17)
- spring-boot (3)
- SQL (7)
- SQLServer (1)
- SSO (1)
- struts (2)
- SVN (1)
- Talend (1)
- Tomcat (6)
- unity (3)
- Visual Studio Code (2)
- vmware (5)
- Web Services (11)
- windows (18)
- wordpress (10)
- Xiaomi (1)
- xml (2)
Trabajos Realizados
- App Android – Autoka Fr
- App Android – Cartelera Cántabra
- App Android – Gramática y Vocabulario Ingles
- App Android – Hoja de Gastos
- App Android – Hotel Torre Cristina
- App Android – OcioEnjoy
- App Android – Visor CardBoard
- App Firefox – Managapp
- DiamanteBomba – DisasterCode
- Generador de Partes de Trabajo
- GitHub – Android Web Generator
- GitHub – Dynamic Angular Gallery
- GitHub – Dynamic React Gallery
- GitHub – Sotilizator
- GitHub – SpringAngularJS
- GitHub – Swiper Dynamic Angular Gallery
- HazParejas – DisasterCode
- RompeCabezas – DisasterCode
- Unity Game – English Couple
- Unity Game – Kill Wasp
- WordPress – El Buen Apicultor
- WordPress – El Cajón de los Retales
- WordPress – El Vestidito Azul
- WordPress – Feuchas
- WordPress – Fragua de Navajas Ponce
- WordPress – Humor a las Tres
- WordPress – Photo Places