web-dev-qa-db-fra.com

WebApi2 dans Visual Studio 2012

Comment créer un projet qui utilise WebApi2 dans Visual Studio 2012?

Dois-je créer avec un projet vierge ou dois-je créer un projet MVC?

Je ne veux pas installer l'aperçu de Visual Studio 2013, aidez-moi.

20
user2070369
31
Sean Lynch

Pour autant que je sache, l'API Web 2 est égale à la 5.0.0-beta2, vous pouvez donc simplement tirer cela de NuGet comme décrit par Olav.

Cependant, si vous avez installé la mise à jour VS2012.2, vous pouvez commencer avec un modèle d'API Web, pas seulement avec un modèle MVC. Démarrez un nouveau projet, sélectionnez MVC, puis sélectionnez le modèle d'API Web. Cela n'ajoutera pas grand-chose, juste quelques exemples de contrôleurs et certains fichiers de configuration adaptés à l'API Web.

Pour des fonctionnalités VS2013 spécifiques comme celles présentées dans certaines vidéos de construction: je crains que vous n'ayez besoin de l'aperçu 2013 pour les utiliser.

6
Kazu

Créez un projet MVC, faites un clic droit et sélectionnez

  1. Créer un projet MVC
  2. Cliquez avec le bouton droit sur le projet dans l'Explorateur de solutions et sélectionnez "Gérer les packages de nuget"
  3. Sélectionnez "inclure la version préliminaire"
  4. Recherchez l'API Web et sélectionnez "Microsoft ASP.NET Web API", assurez-vous que la version est 5.0.0-beta2 (version préliminaire)

Attendez, après un moment, vous devriez être prêt à partir.

6
Olav Nybø

Ma recherche initiale m'a amené à adopter l'approche de configuration manuelle que je détaille ci-dessous, donc je n'ai jamais essayé la suggestion d'Olav. Si cela fonctionne, c'est probablement la voie à suivre. Sinon, ou s'il manque des éléments à cette approche, voici les étapes que j'ai suivies. J'utilise VS 2012 Update 3.

  • Commencez avec un nouveau projet MVC 4/Web API
  • À partir de la console du gestionnaire de packages, exécutez:

    Install-Package Microsoft.AspNet.WebApi -pre

J'ai reçu un avertissement indiquant qu'il sautait _ViewStart.cshtml mais cela m'a donné la possibilité d'écraser. J'ai choisi Oui.

  • Toujours à partir de la console du gestionnaire de packages, exécutez:

    Install-Package Microsoft.AspNet.Mvc -Pre

  • Modifiez web.config, views\web.config et areas\views\web.config selon ces instructions . Ignorez les étapes 1 à 5 sous Étapes de mise à niveau. De plus, je n'avais rien à faire concernant les WebHelpers.

  • Ajoutez des références à System.Web.Http 5.0 à web.config conformément à l'étape 2 de cette réponse .
  • Si vous générez à ce stade, vous obtiendrez une erreur de compilation indiquant que XmlDocumentationProvider dans le dossier Areas\HelpPage n'implémente pas complètement l'interface. Je ne sais pas de quoi il s'agit, mais à ce stade, ce n'est pas important pour moi, j'ai donc ajouté des implémentations vides aux deux méthodes manquantes (astuce: faites un clic droit sur IDocumentationProvider et sélectionnez l'interface d'implémentation - cela ajoutera les deux méthodes manquantes).

Je l'ai fait il y a quelques jours et ma mémoire est déjà floue, mais je pense que cela le couvre. À ce stade, je peux utiliser WebAPI2, y compris le routage basé sur les attributs!

3
dae721

Ouvrez la vue et sélectionnez package manager console et collez la commande suivante et appuyez sur Entrée.

Install-Package Microsoft.AspNet.WebApi 

Package manger console s'affichera en bas.

enter image description here

1
Muhammad Nasir