Une entrevue avec Daniel Roth
Retrouvez toutes les dernières nouvelles de la version RC d'ASP.NET Core 2.1 dans l'interview d'Ed Charbeneau avec Daniel Roth à Microsoft Build 2018.
Sur cet épisode de Eat Sleep Code, l'invité Daniel Roth parle de "live release" candidat "d'ASP.NET Core 2.1. Je me suis assis avec Daniel Roth à Microsoft Build 2018 pour discuter des améliorations à venir dans la version, et il y a beaucoup à dire. C'est une version excitante qui comprend un signal SignalR / Azure SignalR flambant neuf, une intégration facile avec OpenAPI (aka Swagger), un support de tests fonctionnels, et bien plus encore. Daniel discute certaines de ses fonctionnalités préférées comme HttpClientFactor et des frameworks expérimentaux comme Blazor .
Vous pouvez écouter le spectacle, enregistré en direct sur Build 2018, en utilisant le player ci-dessous ou en vous abonnant sur iTunes . Pour ceux qui préfèrent lire à l'écoute, vous trouverez ci-dessous des récapitulatifs des nombreuses fonctionnalités discutées sur le podcast.
SignalR
SignalR est une bibliothèque ASP.NET pour travailler avec la communication bidirectionnelle entre le serveur et le client via Websockets . Dans ASP.NET 2.1, la nouvelle version de SignalR est une version en direct complète. Bien que SignalR n'ait pas été complètement réécrit à partir de la version initiale de .NET Framework, il a été fondamentalement modifié et considérablement amélioré. L'un des plus grands changements est la suppression de sa dépendance jQuery. La suppression de jQuery élargit le spectre des frameworks côté client à utiliser, notamment Angular, React et Vue. En outre, les protocoles sont maintenant extensibles dans SignalR avec deux protocoles de concentrateur intégrés: un protocole de texte basé sur JSON et un protocole binaire utilisant MessagePack
Azure SignalR Service
L'une des plus grandes annonces concernant SignalR est de savoir comment étant inclus dans la pile Azure. Les développeurs n'ont plus besoin de gérer les performances, l'évolutivité et la disponibilité de leurs concentrateurs SignalR. Avec le service Azure SignalR, ces problèmes sont traités pour vous.
Install-Package Microsoft.Azure.SignalR -Version 1.0. 0-preview1-10009
OpenAPI / Swagger Integration
[Produces(typeof(SalesOrder))]
public IActionResult Get (long id)
{
var salesOrder = GetSalesOrder (id);
renvoie Ok (salesOrder);
}
public ActionResult Obtenir (identifiant long)
{
var employé = GetSalesOrder (id);
return salesOrder;
}
Functional Testing Support
HttpClientFactory
] AddHttpClient méthode un HttpClient nommé est ajouté au conteneur de service.
public void ConfigureServices (Services IServiceCollection) {
services.AddHttpClient ("github", c =>
{
c.BaseAddress = new Uri ("https://api.github.com/");
c.DefaultRequestHeaders.Add ("Accepter", "application / vnd.github.v3 + json"); // Github API versioning
c.DefaultRequestHeaders.Add ("User-Agent", "HttpClientFactory-Sample"); // Github nécessite un user-agent
});
}
public class MyController: Controller
{
IHttpClientFactory _httpClientFactory;
MyController public (IHttpClientFactory httpClientFactory)
{
_httpClientFactory = httpClientFactory;
}
public IActionResult Index ()
{
var gitHubClient = _httpClientFactory.CreateClient ("github");
retour Voir ();
}
}
public void ConfigureServices (services IServiceCollection)
{
services.AddHttpClient ();
services.AddMvc ();
}
public class GitHubService
{
public HttpClient Client {get; ensemble privé; }
GitHubService public (client HttpClient)
{
client.BaseAddress = new Uri ("https://api.github.com/");
client.DefaultRequestHeaders.Add ("Accepter", "application / vnd.github.v3 + json"); // Github API versioning
client.DefaultRequestHeaders.Add ("User-Agent", "HttpClientFactory-Sample"); // Github nécessite un user-agent
Client = client;
}
}
Dans le contrôleur, le HttpClient peut être résolu par injection de dépendance en utilisant le type.
public class IndexModel: PageModel
{
GitHubService privé _ghService;
IndexModel public (GitHubService ghService)
{
_ghService = ghService;
}
tâche asynchrone publique OnGet ()
{
var resultat = wait _ghService.Client.GetStringAsync ("/ orgs / octokit / repos");
}
}
Avec l'ajout de HttpClientFactory, un pipeline de middleware HTTP sortant est disponible en utilisant un type DelegatingHandler
. Le pipeline de middleware sortant est conceptuellement similaire à la manière dont ASP.NET gère les requêtes HTTP entrantes. Plus d'informations sur HttpClientFactory sont disponibles dans l'article, Présentation de la fabrique HTTPClient .
Bibliothèques de classe Razor
Une bibliothèque de classes Razor (RCL), comme son nom l'indique, est une bibliothèque de classes Vues rasoir. Les RCL sont un moyen simple de créer des mandrins réutilisables de code de vue qui peuvent être partagés entre des projets ou via NuGet. Inclus dans la version ASP.NET Core 2.1 est un nouveau modèle RCL disponible via l'expérience Fichier> Nouveau projet dans Visual Studio ou la ligne de commande en utilisant dotnet new razorclasslib -o RazorClassLib1
.
Si vous avez une idée de la façon dont Progress Telerik peut utiliser les RCL, envoyez-nous un message à l'adresse feedback.telerik.com et faites-nous le savoir. 19659039] Identity Overhaul
L'identité dans ASP.NET Core 2.1 est en cours de révision majeure.
GDPR
Les mises à jour incluent une prise en charge permettant aux développeurs de gérer les implications du GDPR (General Data Protection Regulation). prendre le contrôle de leurs données personnelles Dans cette version, la bibliothèque ASP.NET Identity gi ves développeurs un point de départ pour la façon de gérer les cookies, la possibilité de télécharger des données personnelles (en mode hors connexion), et de supprimer leurs données d'identité.
Identiy Scaffolding
Dans les versions précédentes d'ASP.NET Core, l'ajout d'Identity à un projet était un processus très manuel. Les utilisateurs devaient souvent créer un nouveau projet à l'aide de la boîte de dialogue Fichier> Nouveau projet pour obtenir le code nécessaire à ajouter à un projet existant. Avec ASP.NET Core 2.1 et grâce à Razor Class Libraries (RCL), il s'agit maintenant d'un processus simple
Dans ASP.NET Core 2.1 Identity est une RCL qui peut être facilement ajoutée aux projets nouveaux et existants. Pour aider davantage les développeurs dans le processus, un nouvel assistant Identity Scaffolidng a été ajouté à Visual Studio. L'outil d'échafaudage Identity sert à deux fins, en ajoutant l'identité ou en remplaçant les modèles d'identité existants.
Remarque: Les nouveaux modèles ne contiennent pas le rendu côté serveur (SSR). Le SSR peut être activé, mais ce n'est pas une décision à prendre à la légère car il y a des impacts négatifs sur l'utilisation du SSR dans une application. Les détails concernant le SSR avec ASP.NET Core 2.1 Les modèles SPA sont disponibles dans la documentation officielle ASP.NET .
Si vous êtes un client Progress Telerik et que vous souhaitez essayer le modèle Angular SPA en utilisant le Kendo UI, téléchargez notre dernière extension pour Visual Studio sur le marché . Faites-nous savoir si c'est quelque chose que nous devrions continuer à développer en laissant vos commentaires à feedback.telerik.com .
Blazor Experiment continue
Blazor est pas officiellement pris en charge ASP.NET Caractéristique de base mais cela ne le rend pas moins excitant. Blazor est un nouveau framework web .NET expérimental utilisant C # / Razor et HTML qui s'exécute dans le navigateur avec WebAssembly. Blazor est fortement inspiré par les concepts de frameworks frontaux populaires comme Angular et React. L'aspect prometteur de Blazor est qu'il est capable de consommer des bibliothèques .NET Standard sur le client du navigateur. Cela signifie que les applications Blazor peuvent potentiellement partager du code commun entre le serveur et le client, et en plus des bibliothèques de NuGet. L'inconvénient d'exécuter des bibliothèques existantes sur le client est qu'elles ne doivent pas dépendre de ressources qui ne sont pas disponibles dans le navigateur, ex: System.IO ou System.Drawing.
Puisque Blazor est un test, il doit être ajouté manuellement et n'est pas inclus avec ASP.NET Core 2.1. Vous trouverez les instructions d'installation sur la page d'accueil Blazor .
Les commentaires sont désactivés en mode prévisualisation.
[ad_2]
Source link