Entonces, ¿cuáles son exactamente las partes necesarias para que Angular 2 y Typecript funcionen con Asp.net Core?

Configúrelos por separado. No intente utilizar la estructura de carpetas principales ASP.Net para el código del cliente. No es particularmente útil, aunque puede hacer que funcione.

Cree una carpeta para su proyecto angular, configúrela como si hubiera un back-end ejecutándose en un servidor diferente, tal vez incluso utilizando algunos datos ficticios, y luego cree la compilación de una API JSON como un proyecto básico asp.net que se comunica con su aplicación de navegador a través de http.

Puede tenerlos a ambos en el mismo proyecto, lo intenté por un tiempo pero descubrí que no era una buena forma de trabajar. En realidad, hace las cosas más complicadas porque a menudo es deseable poder ejecutar su aplicación usando un servidor diferente en desarrollo. Estos servidores, que generalmente están basados ​​en nodos, proporcionan muchas cosas útiles para proyectos basados ​​en JavaScript que le facilitarán la vida.

Configurar archivos

  1. package.json enumera los paquetes y define algunos scripts útiles. Haga clic derecho en npm en la carpeta Dependencias y elija “Abrir paquete.json”. Archivo de ejemplo: package.json
  2. typings.json identifica los archivos de definición de TypeScript. Agregue el archivo a la carpeta raíz. Archivo de ejemplo: typings.json
  3. systemjs.config.js, el archivo de configuración de SystemJS. Agréguelo a la carpeta wwwroot. Archivo de ejemplo: systemjs.config.js
  4. Agregue una carpeta llamada scripts en su carpeta de proyecto raíz: agregue tsconfig.json, que es el archivo de configuración del compilador TypeScript a su nueva carpeta de scripts. Archivo de ejemplo: tsconfig.json.
  5. Edite el archivo gulpfile para asegurarse de que el código se transpila en cada compilación: gulpfile.js

Agregue la muestra hello world de Angular 2

En la carpeta de scripts: agregue main.ts

/// import {bootstrap} de ‘@ angular / platform-browser-dynamic’; importar {AppComponent} desde ‘./app.component’; bootstrap (componente de la aplicación);

En la carpeta de scripts, agregue app.component.ts

importar {Componente} desde ‘@ angular / core’; @Component ({selector: ‘mi-aplicación’, plantilla: ‘

Hola Mundo, esto es Angular2

‘}) clase de exportación AppComponent {}

Editar vistas \ Shared_Layout.cshtml

Agregue este código del tutorial de inicio rápido angular a la parte principal.

Edite su archivo de índice

Añadir: Cargando…

Ejecute algunas tareas y configure el corredor de tareas

  • Ejecute la tarea CopyScripts una vez para copiar bibliotecas desde el nodo_modules hasta la carpeta wwwroot / lib
  • Configure el enlace para que la tarea ts se ejecute después de cada compilación.

No soy un chico de ASP.NET, pero puedo decirte que si estás usando NPM debes instalar Node (aunque el acrónimo a veces es cuestionado, NPM significa Node Package Manager). NPM viene junto con su instalación de Node.js. Como dijo, su archivo package.JSON declarará qué dependencias desea que tenga su aplicación, Angular, Gulp, etc. Un archivo package.JSON generalmente se mantiene en la raíz del proyecto. Después de instalar Node, navegue a través de la línea de comando hasta la raíz del proyecto y ejecute “npm install”. Esto instalará todas las dependencias enumeradas en su archivo package.json.

No tiene que usar otras funciones de Node.js en su proyecto para usar NPM.

Gulp es simplemente un corredor de tareas. Se puede usar para minificar su código, iniciar un servidor y más. Gulp es fantástico, pero no es una necesidad.

Todavía no he trabajado con Angular 2, pero recientemente he creado un nuevo proyecto ASP.NET MVC Core basado en AureliaJS y fue algo bastante sencillo de hacer. Simplemente instale los paquetes NPM necesarios, incluya scripts en la página principal y coloque casi todo en la carpeta wwwroot.

Tal vez encuentre útil este tutorial: Angular 2 y ASP.NET Core 1.0 usando Visual Studio Code y TypeScript – Mithunvp.com

Y este código de muestra: FabianGosebrink / ASPNET-Core-Angular2-SignalR-typescript

Creé una aplicación de muestra con AspDotNet Core y Angular 2/4/5 usando Visual Studio 2015, así que es lo mismo que hacer con Express o KOA. Todo lo que necesita es administrar paquetes, nada más.

Gracias