Publicado en Programacion, Visual Studio

ERROR Project Setup Visual Studio Crystal Reports: File ‘log4net.dll’ targeting ‘AMD64’ is not compatible with the project’s target platform ‘x86’ [SOLUCIONADO]

visual studio 2017 crystal reports
Aqui dejo la solucion para el error “File ‘log4net.dll’ targeting ‘AMD64’ is not compatible with the project’s target platform ‘x86’” que se genera al compilar un proyecto Setup en Visual Studio.

El ejemplo lo realice con Visual Studio 2017 y el IDE de Crystal Reports (CRforVS13SP25_0-10010309.EXE).

install-crystal-report-runtime-64-bit

Sigue leyendo “ERROR Project Setup Visual Studio Crystal Reports: File ‘log4net.dll’ targeting ‘AMD64’ is not compatible with the project’s target platform ‘x86’ [SOLUCIONADO]”

Publicado en Tutoriales, Visual Studio

MVC Bootstrap: Desplegar mensaje de confirmacion despues de un Post en Theme Concept

theme concept dashboard

Acá dejare un pequeño ejemplo para implementar un mensaje de confirmación después de un Post en el Theme Concept.

Tomaremos el código para crear un modal Popup que desplegara el formulario a grabar y en esta misma vista tendremos el mensaje de confirmación con el estilo del theme CONCEPT

Cambien parto de la idea que ya sabemos como integrar un Template al MVC de Visual Studio (bundles, content, js, etc.).

theme concept dashboard modal

Crearemos un Layout, Controller y Vista para este ejemplo.

Sigue leyendo “MVC Bootstrap: Desplegar mensaje de confirmacion despues de un Post en Theme Concept”

Publicado en Team Foundation Server, Visual Studio

Visual Studio 2019 TFS Invalid Project Binding when Adding New Project (Solucion)

invalid-project-binding-when-adding-new-project

Tenia un proyecto hecho en Visual Studio 2015 y lo lleve al nuevo Visual Studio 2019. Lo baje del TFS y todo bien hasta ahí.

Pero tuve que agregar un nuevo proyecto y este no apareció bajo el control del TFS. Intente varios caminos pero no hubo caso (descargar y cargar el proyecto de nuevo entre otros). También trate de cambiar las rutas de los proyectos enlazados y me salía el error que se despliega en la primera imagen el error que se despliega en la primera imagen.

Ya antes tuve un problema similar asi que me puse a hacer memoria y les dejo los pasos que hice para poner al nuevo proyecto enlazado al TFS:

Sigue leyendo “Visual Studio 2019 TFS Invalid Project Binding when Adding New Project (Solucion)”

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);
        }