Je développe un projet WebAPI ASP.NET 5 à l'aide de VS Ultimate 2015 Preview. J'essaie de configurer l'application de cette manière (les numéros de ligne ne sont que des guides):
1 using Microsoft.Framework.ConfigurationModel;
2
3 public IConfiguration Configuration { get; private set; }
4
5 public Startup()
6 {
7 Configuration = new Configuration()
8 .AddJsonFile("config.json")
9 .AddEnvironmentVariables();
10 }
La ligne 8 me donne une erreur: 'Configuration' ne contient pas de définition pour 'AddJsonFile' ...
Qu'est-ce qui ne va pas?
Microsoft.Extensions.Configuration
etMicrosoft.Extensions.Configuration.Json
Microsoft.Extensions.Configuration.Json
comme dépendance dans votre fichier project.json , puis ajouterusing Microsoft.Extensions.Configuration
dans votre classe Startup.cs .Je sais que c'est un peu vieux, mais je viens de rencontrer ce problème en essayant de créer mon premier projet vierge Asp.net core 1.0. Pour utiliser la
AddJsonFile
méthode, vous devez ajouter une référenceMicrosoft.Extensions.Configuration.Json
à votre projet via Nuget .Pour installer la référence, exécutez la commande ci-dessous dans la console du gestionnaire de packages:
la source
Au cas où quelqu'un d'autre aurait des problèmes avec cela, Microsoft a apporté des modifications majeures à cette partie du framework le 16 août 2015. Vous devez importer les bonnes versions des dépendances et basculer vers la nouvelle façon de construire la configuration.
Ma configuration comprend:
{ "webroot": "wwwroot", "version": "1.0.0-*", "dependencies": { "Microsoft.Framework.Runtime": "1.0.0-*", "Microsoft.AspNet.Server.IIS": "1.0.0-beta7", "Microsoft.AspNet.Diagnostics": "1.0.0-beta7", "Microsoft.AspNet.Mvc": "6.0.0-beta7", "Microsoft.Framework.Configuration": "1.0.0-beta7", "Microsoft.Framework.Configuration.Json": "1.0.0-*" }, ... }
Ce code, inspiré de cette question, pourrait vous aider dans une certaine mesure:
using System; using Microsoft.AspNet.Builder; using Microsoft.Framework.DependencyInjection; using Messenger.Services; using Microsoft.Framework.Configuration; using Microsoft.Dnx.Runtime; using Microsoft.AspNet.Hosting; namespace Messenger { public class Startup { public Startup(IHostingEnvironment env, IApplicationEnvironment appEnv) { var configurationBuilder = new ConfigurationBuilder(appEnv.ApplicationBasePath) .AddJsonFile("config.json") .AddEnvironmentVariables(); Configuration = configurationBuilder.Build(); } public IConfiguration Configuration { get; set; } } ... }
J'espère que cela aide.
la source
Sous project.json, vous devrez l'ajouter dans les dépendances
dependencies { "Microsoft.Extensions.Configuration.Json": "1.0.0" }
la source