par , 30/08/2016 à 00h20 (2279 Affichages)
Il va sans dire que ASP.NET Core apporte des changements majeurs à la plateforme de développement Web. La révision complète de son architecture pour le rendre cross-platform a pour conséquence de briser certaines facilités que nous apportait l’environnement de développement.
Travaillant récemment sur une application ASP.NET MVC Core, je me suis rendu compte que le scaffolding CRUD avait disparu.
Pour ceux qui ne le savent pas, le scaffolding CRUD est une fonctionnalité permettant de générer automatiquement un contrôleur avec les actions Create, Read (Details et Index), Update (Edit) et Delete, ainsi que les vues correspondantes. Il s’agit d’une aide précieuse permettant de gagner du temps. Comme vous pouvez le constater via la capture suivante, cette option n’est pas présente :
Avant toute chose, je tiens à préciser que j’ai installé tous les outils et packages nécessaires (selon la documentation), dont :
- Visual Studio 2015 Update 3 ;
- .NET Core 1.0.0 - VS 2015 Tooling Preview 2 ;
- EntityFrameworkCore ;
- EntityFrameworkCore Tools
Dans ce petit billet de blog, je vais vous explique comment restaurer rapidement cette fonctionnalité.
Pour remédier à cela, j’ai simplement modifié le fichier project.json et j’ai ajouté les packages suivants :
1 2 3 4
| "Microsoft.EntityFrameworkCore.SqlServer.Design": "1.0.0",
"Microsoft.VisualStudio.Web.CodeGeneration.Tools": "1.0.0-preview2-final",
"Microsoft.VisualStudio.Web.CodeGeneration.Core": "1.0.0-preview2-final",
"Microsoft.VisualStudio.Web.CodeGenerators.Mvc": "1.0.0-preview2-final" |
Vous devez également ajouter les informations suivantes dans la section “tools” du fichier Project.json :
1 2 3 4 5
| "Microsoft.VisualStudio.Web.CodeGeneration.Tools": {
"version": "1.0.0-preview2-final",
"imports": [
"portable-net45+win8+dnxcore50",
"portable-net45+win8" |
Lorsque vous allez enregistrer le fichier, NuGet va automatiquement restaurer ces packages. Ceci fait, vous verrez désormais dans le menu contextuel “New Scaffolded Item”.
J’espère que cela vous permettra de perdre moins de temps s’il arrive que vous êtes confronté à ce problème.