কেন ভিজুয়াল স্টুডিও আমাকে বলবে যে অ্যাডজসনফায়াল () পদ্ধতিটি সংজ্ঞায়িত হয়নি?


88

আমি ভিএস আলটিমেট 2015 পূর্বরূপ ব্যবহার করে একটি এএসপি.নেট 5 ওয়েবএপিআই প্রকল্প বিকাশ করছি। আমি এইভাবে অ্যাপটি কনফিগার করার চেষ্টা করছি (লাইন নম্বরগুলি কেবল গাইড):

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 }

8 লাইনটি আমাকে একটি ত্রুটি দেয়: 'কনফিগারেশন'-এ' অ্যাডজসনফাইলে 'এর সংজ্ঞা নেই ...

কি সমস্যা?

উত্তর:


210

আপনি Microsoft.Extensions.Configuration.Jsonযদি .AddJsonFile()পদ্ধতিটি কল করতে চান তবে আপনাকে নিউগেট প্যাকেজ অন্তর্ভুক্ত করতে হবে ।

দেখুন: https://github.com/aspnet/Configration/tree/dev/src/Mic Microsoft.Framework.ConfigrationModel.Json

আরও পড়ার জন্য, এখানে একটি সুন্দর টিউটোরিয়াল: এএসপি.এনইটি ভিএনেক্সট চলন্ত যন্ত্রাংশ: আইকনফিগ্রেশন


9
আরসি 2 যেহেতু এটি এখন Microsoft.Extensions.ConfigurationএবংMicrosoft.Extensions.Configuration.Json
ক্রিস এস

4
ক্রিস দ্বারা যুক্ত করা মন্তব্যটি আরও নির্দিষ্ট করতে: 22.07.2016 পর্যন্ত আপনার আপনার প্রকল্প.জসন ফাইলে নির্ভরতাMicrosoft.Extensions.Configuration.Json হিসাবে যুক্ত করা উচিত এবং তারপরে আপনার স্টার্টআপ.সি ক্লাসে যুক্ত করা উচিত। using Microsoft.Extensions.Configuration
টর্মোড হাগিন

4
লিঙ্কগুলি ভাঙা হয়েছে
WPFUser

এই উত্তরটি এখনও চার বছর পরে কার্যকর!
MEMark

24

আমি জানি এটি কিছুটা পুরানো তবে আমার প্রথম Asp.net কোর 1.0 ফাঁকা প্রকল্পটি নির্মাণের চেষ্টা করার সময় আমি এই সমস্যাটি নিয়ে এসেছি। AddJsonFileপদ্ধতিটি ব্যবহার করার জন্য আপনাকে অবশ্যই নুগেটেরMicrosoft.Extensions.Configuration.Json মাধ্যমে আপনার প্রকল্পের একটি রেফারেন্স যুক্ত করতে হবে ।

রেফারেন্স ইনস্টল করতে প্যাকেজ ম্যানেজার কনসোলে নীচের কমান্ডটি চালান:

PM> Install-Package Microsoft.Extensions.Configuration.Json

4

অন্য কারও সাথে যদি সমস্যা হয় তবে মাইক্রোসফ্ট 16 ই আগস্ট 2015 এ কাঠামোর এই অংশে ব্রেকিং পরিবর্তন করেছে You আপনাকে অবশ্যই নির্ভরতার সঠিক সংস্করণগুলি আমদানি করতে হবে এবং কনফিগারেশন তৈরির নতুন পথে যেতে হবে।

আমার কনফিগারেশন অন্তর্ভুক্ত:

{
  "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-*"
  },
...
}

এই কোডটি, এই প্রশ্নের দ্বারা অনুপ্রাণিত হতে পারে আপনাকে কিছুটা সহায়তা করতে পারে:

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; }
    }
...

}

আশা করি এটা সাহায্য করবে.


মাইক্রোসফ্ট এটি আবার পরিবর্তন করেছে - পরিবর্তে
ডাব্লুবাকের

1

প্রকল্প.জসনের অধীনে আপনাকে এটিকে নির্ভরতার মধ্যে যুক্ত করতে হবে

dependencies {
"Microsoft.Extensions.Configuration.Json": "1.0.0"
}
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.