Publicado en C# - Csharp, Entity Framework, LinQ

C# Ejecutar un Procedimiento Almacenado con Linq Syntax

Este ejemplo es para traer la fecha del sistema de nuestro servidor de base de datos, para evitar que en aplicaciones de escritorio el usuario cambie la fecha (si tiene los permisos)

El procedimiento sera este:

CREATE PROCEDURE [dbo].[ObtenerFechaSistema] 
AS
BEGIN
	-- SET NOCOUNT ON added to prevent extra result sets from
	-- interfering with SELECT statements.
	SET NOCOUNT ON;

    -- Insert statements for procedure here
	SELECT GETDATE() as FechaSistema
END

Sigue leyendo “C# Ejecutar un Procedimiento Almacenado con Linq Syntax”

Publicado en C# - Csharp

itextsharp c# : celdas con bordes parciales

Usando la librería itextsharp, debí dibujar un formulario en que no todas las celdas tenían los cuatro bordes, solo algunos.

Así que aquí les dejo el código para poner el borde personalizado según lo requieran:

using iTextSharp.text;
using iTextSharp.text.pdf;
using System.IO;
using System.Diagnostics;
private void button1_Click(object sender, EventArgs e)
        {
            //archivo temporal
            string outputFile = System.IO.Path.GetTempPath() + Guid.NewGuid().ToString() + ".pdf";

            //Create a standard .Net FileStream for the file, setting various flags
            using (FileStream fs = new FileStream(outputFile, FileMode.Create, FileAccess.Write, FileShare.None))
            {
                //Create a new PDF document setting the size to LETTER - tamaño CARTA
                using (Document doc = new Document(PageSize.LETTER))
                //using (Document doc = new Document(rec))
                {
                    //Bind the PDF document to the FileStream using an iTextSharp PdfWriter
                    using (PdfWriter w = PdfWriter.GetInstance(doc, fs))
                    {
                        //margenes fuera del limite normal a lo ancho -50f
                        doc.SetMargins(-50f, -50f, 10f, 10f);
                        //Open the document for writing
                        doc.Open();

                        //definimos cuatro columnas de 25% cada una
                        float[] columnWidths = { 25, 25, 25, 25 };
                        PdfPTable table = new PdfPTable(columnWidths);
                        //por defecto la tabla no tiene bordes
                        table.DefaultCell.Border = iTextSharp.text.Rectangle.NO_BORDER; 
                        var cell = new PdfPCell(new Phrase("uno"));
                        cell.Border = PdfPCell.BOTTOM_BORDER; //borde inferior
                        table.AddCell(cell);
                        cell = new PdfPCell(new Phrase("dos"));
                        cell.Border = PdfPCell.TOP_BORDER; //borde superior
                        table.AddCell(cell);
                        cell = new PdfPCell(new Phrase("tres"));
                        cell.Border = PdfPCell.LEFT_BORDER; //borde izquierdo
                        table.AddCell(cell);
                        cell = new PdfPCell(new Phrase("cuatro"));
                        cell.Border = PdfPCell.RIGHT_BORDER; //borde derecho
                        table.AddCell(cell);
                        doc.Add(table);

                        doc.Close();
                    }
                }
            }
            //abrimos el PDF con la aplicacion por defecto
            Process.Start(outputFile);
        }
Publicado en .NET Framework, C# - Csharp, Visual Studio

ERROR: File ‘log4net.dll’ targeting ‘AMD64’ is not compatible with the project’s target platform ‘x86’

Este error me salio en un proyecto (en Visual Studio 2015) al generar el proyecto Setup en plataforma Any CPU

Revisando por Google, las soluciones no me servían y seguía el error. Luego revise que la componente Crystal Reports me “asociaba” el archivo log4net.dll al proyecto.

Y como no estaba usando el Crystal Reports, simplemente removí las referencias (mas una de Flash.ocx que no se como apareció ahi) y con eso se soluciono el Build del Setup.

Resumen:

– Remove Crystal Reports references
– Remove Flash Control references

SOLUCION Revisa aca

Publicado en ASP .NET, C# - Csharp, Programacion, Tutoriales, Visual Studio

ASP.NET: Marcar Listas Genericas con Delegate

listas-genericas-delegate

Aqui voy a dejar una solucion para un problema que se nos puede presentar cuando queremos “marcar” una lista generica en base a otra lista.

Ejemplo: Tengo una lista de todas las Sucursales y tengo otra en la cual me informan las que se van a cerrar. Debo listar todas las Sucursales en una grilla y dejar marcadas aquellas que se van a cerrar.

Una solucion tradicion seria un foreach para recorrer ambas listas e ir uno por uno de los elementos. Como muestra este codigo:

Sigue leyendo “ASP.NET: Marcar Listas Genericas con Delegate”