Publicado en C# - Csharp, Entity Framework, Programacion, Tutoriales, Visual Studio

C# Winforms: Uso de CheckedListBox con Entity Framework con items seleccionados

En este tutorial dejare el codigo para el uso de un CheckedListBox con elementos marcados y no marcados. Y los registros los manejaremos en una base SQL Express mas Entity Framework.

Simularemos una lista o carro de compras. La idea es guardar una lista con una X seleccion de productos para despues recuperar dicha lista pero solo con los productos que marco.

Sigue leyendo “C# Winforms: Uso de CheckedListBox con Entity Framework con items seleccionados”

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