Generar un archivo ejecutable desde el proyecto local .NET Core 3.1

directorio

Descripción: Compilar el código administrado?

Cómo funciona: Principio

aplicaciones

Programa de ejemplo

1. Compruebe la instalación de componentes de Visual Studio

2. Añadir el repositorio tiene ILCompiler de NuGet

3. dependencia a su proyecto

4. La aplicación de codificación

El archivo ejecutable del programa generación local

conclusión


En este artículo, vamos a ver un uso .NET Core 3 programa de ejemplo. Vamos a revisar el proceso de desarrolladores locales para generar un archivo ejecutable de su aplicación y debe ser seguido. Vamos a ver cómo comprobar el Visual Studio instalado componentes, ha añadido ILCompiler de NuGet dependencias del repositorio se añadirá a su proyecto, las aplicaciones de grabación y generar el archivo ejecutable del programa local.

Descripción: Compilar el código administrado?

Esta función no está integrada en el SDK , pero para el C , se proporciona un desarrollador de # .NET Core 3 original .csproj método sorprendente para generar el archivo ejecutable por máquina. Desde mi punto de vista, es que desea distribuir software de una manera profesional (esta es una manera :) puntos clave. He encontrado esta característica en un excelente libro (que no se olvide de proporcionar el código fuente de referencia): Uso .NET Core 3 y Visual Studio 2019 para desarrollar aplicaciones de escritorio multiplataforma.

Con esta herramienta, el .NET Core 3 y concurrente ( Python , el Nodo , Java rendimiento) partido, para mejorar el desarrollo de aplicaciones para mejorar el rendimiento (Por último, C #, casi alcanzó el C ++ nivel de rendimiento).

Cómo funciona: Principio

.NET Core tiempo de ejecución de los proyectos gestionados para la generación de AOT (antes de tiempo) imágenes. Para construir este código, pseudo-compilador MSIL programa de conversión a C ++ (esto es, independientemente de que las etiquetas que utiliza, y compilar los resultados locales para construir el archivo ejecutable de la aplicación OS requiere C ++ herramientas razones). Una de sus principales desarrolladores ( en Microsoft hombres) Matt Warren  ha sido bien documentado este proceso entero .

Para recuperarse, el compilador genera un archivo ejecutable verdaderamente nativo, y las IL asambleas en tiempo de ejecución del JIT ( Just In Time el código del compilador) compilado para.

aplicaciones

obvios beneficios proporcionados mediante el uso de archivo ejecutable nativo se ridículos mejoras en el rendimiento, la falta de un marco de montaje.

Los mayoría de los usos de los programas adecuados principalmente aplicaciones de formato de escritorio local (consola de servicio o la interfaz gráfica de usuario ), ya que para este tipo de aplicación, beneficios informáticos locales es obvia.

Por otro lado, para la Web aplicaciones ( Web de aplicaciones y API ), debido a la implementación de los diferentes tipos de uso, los beneficios no son tan evidentes. En la Web entorno de servidor, en la mayoría de los casos, el marco se ha instalado en el ordenador, utilizando una forma ejecutable local que no es tan obvio.

Programa de ejemplo

Este ejemplo utiliza .NET Core3 . proceso de revisión de let por los desarrolladores de aplicaciones para hacer sus archivos nativos ejecutables que se deben seguir.

1. Compruebe las Visual Studio componentes instalados

ILCompiler añade a la requerida 3 .NET Core bastidor trasero (así como todos los componentes necesarios para utilizar el marco del desarrollo) es necesario proporcionar C ++ funcionalidad de escritorio.

Esta es una necesidad en su Visual Studio instalado en el C ++ función:

2. Agregar tiene ILCompiler de NuGet repositorio

Dedicado NuGet repositorio contiene el archivo ejecutable compilado como un verdadero requeridos locales Microsoft.Dotnet.ILCompiler dependencias.
El repositorio URL es:
HTTPS : //dotnetfeed.blob.core.windows.net/dotnet-core/index.json .

Debe añadir al NuGet repositorio de código fuente, si está utilizando Visual Studio , debe seguir las siguientes imágenes 1 añadirlo al.

cuadro 1

3. La dependencia a su proyecto

Puede figura 2 se muestra en la lista de paquetes disponibles Microsoft.Dotnet.ILCompiler agregar. No se olvide de comprobar ' incluir pre-lanzamiento de la versión ' cuadro (debido a que el paquete todavía está etiquetado ' alfa " versión).

cuadro 2

4. su aplicación de codificación

Ejemplo de ejecución de aplicaciones consola factorial, y mostrar cada nivel (calculado por paso), y el resultado final se muestra en rojo ( maravilloso !).

Este es el código fuente:

using System;

namespace Net3Factorial
{
    class Program
    {
        static long Factorial(int x)
        {
            long result = 1;
            Console.ForegroundColor = ConsoleColor.Blue;
            for (int i = 1; i <= x; i++)
            {
                result = result * i;
                Console.WriteLine("Step {0}: {1}", i, result);
            }
            return result;
        }

        static void Main(string[] args)
        {
            Console.BackgroundColor = ConsoleColor.Black;
            Console.ForegroundColor = ConsoleColor.Green;
            Console.Clear();

            Console.WriteLine("Enter the Integer for the factorial calculation:");

            int num = Convert.ToInt32(Console.ReadLine());
       
            long f = Factorial(num);
            Console.ForegroundColor = ConsoleColor.Red;

            Console.Write("The Factorial of {0} is: {1}\n", num, f);
        }
    }
}

El archivo ejecutable del programa generado locales

Una vez que el proyecto de depuración y pruebas, ahora se desea generar el archivo ejecutable de la aplicación local. Dicho la .csproj archivo tiene que incluir un identificador de plataforma de destino ejecutable generada localmente (que se ejecuta el RID de ).

<runtimeidentifier>win-x64</runtimeidentifier>

Si está utilizando Visual Studio 2019 , puede utilizar la " liberación " (elemento del menú contextual en el elemento) de comandos para generar un archivo ejecutable local, tal como se muestra en la 3 a continuación.

foto 3

Si prefiere la línea de comandos, también puede utilizar la CLI de comandos " DOTNET publicar " .

conclusión

Generar archivo ejecutable es un local de .NET Core 3 ventajas significativas, usted se beneficiará de C # alta productividad, el rendimiento y el uso de casi el clásico C ++ como un buen rendimiento se puede lograr.

Como se describe en el presente documento, el ILCompiler biblioteca de Windows uso, pero Linux y Mac OS X pueden también ser utilizados sucesivamente.

Publicado 71 artículos originales · ganado elogios 152 · vistas 520 000 +

Supongo que te gusta

Origin blog.csdn.net/mzl87/article/details/105058086
Recomendado
Clasificación