Share via



Ottobre 2015

Volume 30 Numero 10

Il presente articolo è stato tradotto automaticamente.

ASP.NET - ASP.NET 5 ovunque con OmniSharp e Yeoman

Da Sayed Ibrahim Ibrahim | Ottobre 2015

Come i team di sviluppo sono diventati più comune nelle scelte di strumenti, Framework deve inoltre fornire scelta senza attrito. ASP.NET 5 ha abbracciato supporto per più piattaforme, tra cui sviluppo tramite Apri origine degli strumenti, ad esempio OmniSharp e l'hosting in Microsoft Azure con contenitori come Docker. In questo articolo mostreremo a come è possibile iniziare a utilizzare ASP.NET 5 sulla piattaforma di propria scelta. Verrà illustrato tutto ciò che occorre per iniziare lo sviluppo di applicazioni Web con ASP.NET 5.

Iniziare un progetto può essere difficile, come lo sviluppo di applicazioni Web moderno anche è pieno di scelte. Come un utente di Visual Studio, potrebbe aver stato quasi spoiled beneficiano dell'IDE, i modelli predefiniti e gli strumenti, ad esempio Web Essentials per semplificare l'acquisizione di un nuovo progetto il piede giusto. Ma gli sviluppatori che non utilizzano Windows e un IDE completo, ad esempio Visual Studio, in genere si sono affidati a strumenti della riga di comando, ad esempio Yeoman, noioso o confessano o Node. js per costruire e creare applicazioni Web. Ora ASP.NET 5 è stata ricreata da zero backup con tutte le piattaforme presente, l'approccio "scelta è king" per strumenti per sviluppatori. È ora possibile utilizzarla non solo per i progetti Windows, ma anche per Linux e OS X. Ecco una breve panoramica impostazione e la creazione di un progetto da una prospettiva del sistema operativo Windows mediante ASP.NET 5.

Impostazione dell'ambiente

Necessari alcuni pezzi per ottenere l'ambiente configurato, ma il processo è ben documentato per OS X e Linux. Sono disponibili istruzioni dettagliate in bit.ly/1Ljhj68. Per questo articolo, si presupporrà che la maggior parte delle si utilizza OS X.

Il primo passaggio consiste per installare gli strumenti che verrà utilizzata per compilare l'applicazione Web di ASP.NET 5. Infine, CoreCLR (github.com/dotnet/coreclr) sarà il runtime di base per il framework. Per ora, tuttavia, ASP.NET 5 richiede comunque il runtime Mono. Per installare Mono, utilizzare HomeBrew (brew.sh):

$ brew install mono

Successivamente, installare il .NET versione Manager (DNVM), un set di utilità della riga di comando che consente di aggiornare e configurare l'ambiente di esecuzione di .NET (DNX), che essenzialmente consente lo sviluppo multipiattaforma utilizza 5 Core .NET (docs.asp.net/en/latest/dnx/). Per installare DNVM e DNX dal terminale, eseguire i comandi seguenti:

$ brew tap aspnet/dnx
$ brew update
$ brew install dnvm

Ora è stato installato il runtime Mono, oltre a DNVM e DNX. Per controllare la versione DNVM, digitare "$ dnvm" terminale, come illustrato nella Figura 1. Si noti che se la shell non riconosce il comando dnvm, potrebbe essere necessario eseguire "origine dnvm.sh" per il caricamento.

Controllo della versione DNVM
Figura 1, controllo della versione DNVM

Scelta di un Editor

Se si utilizza Windows, non c'è molto dibattito; si intende utilizzare una versione di Visual Studio. Tuttavia, per OS X o Linux, si dispone di una serie di opzioni, da un semplice editor di testo simile a una serie di editor comuni, ad esempio Sublime, Atom, Emacs o Vim TextMate. Ma non esiste una nuova aggiunta all'elenco degli editor di sviluppo multipiattaforma, codice di Visual Studio (code.visualstudio.com) di Microsoft, ed è l'editor di scelta non solo per ASP.NET 5, ma anche per AngularJS, Node. js e generali per lo sviluppo JavaScript (vedere Figura 2).

Pagina iniziale di Visual Studio Code
Figura 2, pagina iniziale di codice di Visual Studio

Indipendentemente da quale strumento si decide di utilizzare, la chiave per la visualizzazione dell'editor illuminazione per ASP.NET 5 in OS X e Linux è OmniSharp (omnisharp.net). Codice di Visual Studio viene fornito con OmniSharp incorporati. altri editor hanno estensione o dove è possibile scaricare il componente "componente aggiuntivo" repository.

Il primo progetto di avvio

Senza l'ambiente di sviluppo Visual Studio 2015 avanzata, è necessario basarsi su un approccio diverso per lo sviluppo di un'applicazione ASP.NET 5 in OS X. immettere Yeoman (yeoman.io) e il progetto del generatore ASP.NET (bit.ly/1MPe5KY). Yeoman è una piattaforma di scaffolding basata su Node. js che è possibile creare i generatori di basate su modelli per progetti o file di codice. È un'utilità della riga di comando e perché è stato progettato su Node. js, sono presenti alcune dipendenze che è necessario prestare attenzione del primo.

Per iniziare, installare Node. js e nodo package manager (NPM) tramite HomeBrew o direttamente da nodejs.org:

$ brew install node

Indica che quando viene completata, installare i generatori di npm:

$ npm install -g yo generator-aspnet

Se non è già in uso Bower, noioso o confessano, ottenere tali strumenti. È opportuno acquisire familiarità con questi strumenti come parte dello stack di sviluppo di nuovo e moderno (vedere l'articolo "gli strumenti moderni per lo sviluppo Web: Bower"in questo numero):

$ npm install -g bower grunt-cli gulp-cli

Bower è una gestione pacchetti per lo sviluppo Web front-end e un repository per le risorse Web, ad esempio JavaScript e CSS. Noioso e confessano sono raccolte di esecuzione di attività per l'esecuzione di processi di compilazione, ad esempio script e l'immagine di minimizzazione e transpiling (TypeScript o CoffeeScript).

È tutto per configurare gli strumenti che necessari per lo sviluppo, indipendentemente dall'editor. Per avviare il nuovo tipo di progetto, eseguire "$ yo aspnet" per inizializzare il Yeoman generatore e selezionare il progetto che si desidera creare. In questo caso, selezionare "Web Application Basic [senza appartenenza e autorizzazione]" come mostrato nella Figura 3, quindi digitare il nome del progetto e premere INVIO.

Selezione del tipo di progetto in Yeoman
Figura 3 selezionando il tipo di progetto in Yeoman

Al termine, il generatore è possibile eseguire l'applicazione utilizzando il server Web multipiattaforma Kestrel. In primo luogo, tuttavia, è necessario installare il npm, Bower e NuGet dipendenze, quindi eseguire il comando di ripristino per ottenere queste risorse:

$ cd [projectname]
$ dnu restore

Questo comando Scarica tutti i pacchetti NuGet per il progetto fa riferimento il file project.json.

(È inoltre possibile eseguire "$ npm install" e "$ bower installa" per garantire la JavaScript e dell'interfaccia utente vengono aggiornate le risorse del componente, ma questo non è obbligatorio.)

Successivamente, eseguire il comando per avviare Kestrel:

$ dnx . kestrel

(Si noti che dopo il rilascio di ASP.NET 5 Beta 7, questo comando cambierà in semplicemente "dnx kestrel.")

La parola "Avviato" verrà visualizzato nella finestra del terminale e si sarà in grado di visualizzare il sito Web all'indirizzo http://localhost:5000/. A questo punto aver creato il progetto, ripristinare i pacchetti ed eseguire il sito senza Windows o di Visual Studio. Successivamente, si aprirà il codice nel Visual Studio Code.

Modifica di ASP.NET

Come osservato in precedenza, Visual Studio Code è un ottimo editor per lo sviluppo multipiattaforma. Aprire il progetto le consuete modalità o utilizzando il tasto di scelta rapida "code" dalla cartella del progetto. (Vedere bit.ly/1LwonPN su come impostare la scelta rapida "code".)

Dopo aver aperto la cartella di origine nel codice di Visual Studio, è possibile iniziare a sviluppare l'applicazione. Figura 4 viene illustrato il risultato quando si apre il progetto nel codice.

Apertura di un progetto nell'Editor di Visual Studio Code
Figura 4 apertura di un progetto nell'Editor di Visual Studio Code

Come si può notare, si ottiene l'evidenziazione della sintassi completa per file c# che si prevede, in Mac OS X! Se si osserva attentamente, si noterà una lampadina accanto al cursore nella riga 2. Lampadina, così come in Visual Studio, utilizzabile per eseguire le azioni rapide contestuali. In questo caso, Visual Studio Code offre il suggerimento per rimuovere direttive using non necessari. Ora aggiungiamo nuovi file al progetto.

Per aggiungere un nuovo file al progetto ASP.NET 5, non è necessario fare nulla di speciale. Aggiungere un file nella directory e che verrà automaticamente incluso. Nel codice è possibile utilizzare il pulsante Add File nella visualizzazione struttura ad albero o Ctrl + N per aggiungere un nuovo file vuoto. Se si desidera iniziare a utilizzare parte iniziale del contenuto, è possibile utilizzare "yo aspnet." Per aggiungere file a progetti ASP.NET 5 esistenti, è richiamare un generatore secondari utilizzando la sintassi seguente:

$ yo aspnet:<Name> <options>

Per dimostrarlo, aggiungere un nuovo controller MVC e visualizzazione per una nuova pagina di amministrazione per l'applicazione Web. Innanzitutto si aggiungerà il controller MVC. Quando yo aspnet viene eseguita, aggiungerà file nella directory di lavoro corrente, pertanto è opportuno cd nella directory corretta prima di eseguire i comandi. Per aggiungere il controller MVC, eseguire il comando seguente nella cartella Controllers:

yo aspnet:MvcController AdminController

Dopo l'esecuzione del comando, verrà visualizzato un nuovo file Hello.cs, nella directory di lavoro corrente con il contenuto visualizzato in Figura 5.

Figura 5 Hello.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNet.Mvc;
// For more information on enabling MVC for empty projects, visit
// go.microsoft.com/fwlink/?LinkID=397860
namespace MyNamespace
{
  public class AdminController : Controller
  {
    // GET: /<controller>/
    public IActionResult Index()
    {
      return View();
    }
  }
}

Il file è simile a quando si utilizza File | Nuovo elemento in Visual Studio e selezionare Controller MVC, ad eccezione del fatto che qui il nome dello spazio dei nomi non viene aggiornata automaticamente. In alternativa, è hardcoded come MyNamespace. Per ora è necessario aggiornare la dichiarazione dello spazio dei nomi in modo che corrisponda a quello previsto, ma questo verrà aggiornato in una versione futura. Il sub-generatore di MvcController è solo uno dei molti generatori secondari disponibili in yo aspnet. Per visualizzare l'elenco completo dei generatori secondari, è possibile eseguire:

$ yo aspnet --help

I generatori di secondari in yo aspnet sono equivalenti ai modelli di elemento in Visual Studio quando si utilizza File | Aggiungi nuovo elemento. Per aggiungere una vista, utilizzare il generatore secondario MvcView. Per aggiungere la visualizzazione di amministratore, eseguire il comando seguente dalla cartella visualizzazioni:

$ yo aspnet:MvcView Index

La visualizzazione risultante, index. cshtml, è piuttosto semplice:

@*
  // For more information on
  // enabling MVC for empty projects,
  // visit bit.ly/1PBdyKc
*@
@{
  // ViewBag.Title = "Index Page";
}

Ancora una volta, il contenuto generato utilizzando yo aspnet è equivalente alla finestra di dialogo Aggiungi nuovo elemento in Visual Studio. Nel file index. cshtml è possibile aggiungere un'intestazione, pertanto è possibile passare a questa pagina e verificare che tutto funzioni:

<h1>Admin Page</h1>

Ora vediamo cosa da fare per compilare ed eseguire l'applicazione.

In precedenza abbiamo accennato che è possibile utilizzare il comando "dnx. kestrel"per eseguire l'applicazione. Se si utilizza codice è possibile avviare il server Web utilizzando la tavolozza comando illustrata nella Figura 6.

Avvio di un Server Web nel codice di Visual Studio
Figura 6 codice di Visual Studio a partire da un Server Web

Quando si utilizza codice, il progetto verrà compilato in background utilizzando OmniSharp ogni volta che modifica i file di origine. Per visualizzare eventuali errori e avvisi nel codice, come quelli illustrati nel Figura 7, utilizzare gli errori e pulsante avvisi nella barra di stato. Come si può vedere, il codice è che indica il codice non valido alla riga 16.

Visualizzazione di avvisi ed errori nel codice di Visual Studio
Figura 7 Visualizzazione avvisi ed errori nel codice di Visual Studio

È inoltre possibile compilare il progetto dalla riga di comando. Si supponga che la nuova classe AdminController dispone di un errore di compilazione. Per compilare l'applicazione della riga di comando, eseguire:

$ dnu build

Ciò deve visualizzare errori e avvisi che Mostra codice stesso. Ora che si è visto come compilare ed eseguire l'applicazione, passiamo a illustrare brevemente il debug e distribuzione.

Debug

Attualmente, il debug ASP.NET 5 non è supportato su qualsiasi piattaforma, ad eccezione di Windows e Visual Studio e ciò significa che è possibile eseguire il debug di un'applicazione ASP.NET 5 in esecuzione su Mono per OS X o Linux. ASP.NET 5 le applicazioni vengono compilate utilizzando il compilatore Roslyn, non il compilatore Mono, e non viene generati alcun informazioni di debug. Codice di Visual Studio non supporta ancora il debug, ma è sempre possibile utilizzare Visual Studio in una macchina virtuale nel computer Mac o Linux. Spero che il team di codice di Visual Studio sarà in grado di supportare il debug dopo il rilascio di CoreCLR.

Distribuzione

Si è appreso come sviluppare l'applicazione localmente; Ora esaminiamo un rapido le opzioni di hosting. Un esame approfondito di questo argomento richiederebbe un articolo, in modo ci sarà solo presenta una panoramica generale e di alcune risorse esterne. Visitare bit.ly/1fvDQ41 per informazioni più recenti.

Un livello elevato, ecco le opzioni di pubblicazione per ASP.NET 5:

  • Pubblicazione della riga di comando utilizzando l'utilità della riga di comando "pubblica dnu"
  • Pubblicazione di applicazioni Web di Azure tramite Git
  • Pubblicazione in un contenitore Docker in esecuzione in Azure

Dnu la riga di comando pubblica si trova al centro di ogni metodo di pubblicazione. Verrà creato il pacchetto dell'applicazione in un formato eseguibile sul server Web. Vediamo come.

Per iniziare e per visualizzare le opzioni della riga di comando disponibili, eseguire:

dnu publish –help

Figura 8 viene illustrato il risultato dell'esecuzione di questo comando.

Visualizzazione della Guida con la "dnu pubblica" comando
Figura 8 Getting Help con "dnu la pubblicazione" comando

L'opzione della riga di comando più importante è--out (-o) argomento, che consente di specificare la cartella in cui i file devono essere pubblicati. Ma è anche opportuno esplorare le altre opzioni in base alle esigenze.

Dopo aver pubblicato l'applicazione in una cartella, è sufficiente copiare la cartella al server Web. Se esegue la pubblicazione in un computer Windows che esegue IIS, è possibile configurare il sito Web come avere sempre. Per informazioni su come ottenere il server Web configurato su Linux, vedere bit.ly/1E8uebl.

Se si esegue la pubblicazione in Azure, il supporto dell'interfaccia è possibile utilizzare per iniziare. Azure supporta le applicazioni ASP.NET 5 in applicazioni Web di Azure, nonché in contenitori Docker. Per distribuire applicazioni Web di Azure da un computer non Windows, è possibile utilizzare FTP o Git. Nel caso di FTP, pubblicare i risultati di dnu di pubblicazione. Vedere bit.ly/1LnFC2T per ulteriori informazioni.

Basati su Git pubblicare modelli sono facile da utilizzare e può supportare scenari di distribuzione continua. Per iniziare a pubblicare applicazioni Web di Azure tramite Git, vedere bit.ly/1hQljS0. È sufficiente sapere per iniziare a sviluppare ed eseguire applicazioni ASP.NET 5 sulla piattaforma di propria scelta.

Avvolgendo

Sviluppo di applicazioni Web con ASP.NET utilizzato per richiedere l'utilizzo di Windows e Visual Studio. A questo punto è possibile utilizzare ASP.NET 5 e le relative utilità da riga di comando e gli strumenti su qualsiasi piattaforma. E questo è solo l'inizio. Per teniamo d'occhio le ultime novità per ASP.NET 5, visitare github.com/aspnet/Home. Il yo aspnet progetto è completamente basato sulla community. Se si desidera offrire assistenza, aprire un problema a bit.ly/1PvtcGX.


Shayne Boyerè un MVP di ASP.NET, relatore di community e un architetto di soluzioni Orlando, Florida Egli ha sviluppare soluzioni basate su Microsoft negli ultimi 20 anni. Negli ultimi 10 anni ha lavorato in applicazioni Web su larga scala, con particolare attenzione alla produttività e prestazioni. È possibile contattarlo su Twitter Shayne @spboyer e il suo sito Web all'indirizzo tattoocoder.com.

Sayed Ibrahim Hashimiè un senior program manager presso Microsoft nel team di Visual Studio Web. Ha scritto diversi libri sulle tecnologie Microsoft e il creatore del SideWaffle e TemplateBuilder, nonché uno dei creatori di OmniSharp. È possibile contattarlo su Twitter all'indirizzo Sayed @SayedIHashimi e il suo blog sedodream.com.

Grazie all'esperto tecnico Microsoft seguente per la revisione di questo articolo: Scott Hanselman