Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在Program.cs中添加AddOptions时出错_C#_.net - Fatal编程技术网

C# 在Program.cs中添加AddOptions时出错

C# 在Program.cs中添加AddOptions时出错,c#,.net,C#,.net,我看过这篇文章,但错误与我的不同 我的错误是: “ServiceCollection”不包含“AddOptions”的定义,并且找不到接受“ServiceCollection”类型的第一个参数的扩展方法“AddOptions”(是否缺少using指令或程序集引用?)` 我的代码是: using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; public static IS

我看过这篇文章,但错误与我的不同

我的错误是:

“ServiceCollection”不包含“AddOptions”的定义,并且找不到接受“ServiceCollection”类型的第一个参数的扩展方法“AddOptions”(是否缺少using指令或程序集引用?)`

我的代码是:

using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;

public static IServiceProvider svcProvider = null;

private static void LoadDIStartup()
{
    //Dependency Injection Setup Start
    var env = Environment.GetEnvironmentVariable("ASPNET_ENVIRONMENT");
    Console.WriteLine("ASPNET_ENVIRONMENT: {0}", env);
    var configuration = new ConfigurationBuilder()
        .AddJsonFile("appsettings.json", optional: false)
        .Build();


    svcProvider = new ServiceCollection()
        .AddOptions()
        .Configure<AppConfig>(configuration.GetSection("AppConfig"))
        .AddConfigFile()
        .BuildServiceProvider();

    IgniteDependencyResolver.SetProvider(svcProvider);
    IgniteDependencyResolver.SetConfiguration(configuration);
    IgniteDependencyResolver.Bind<AppConfig>();
    //Dependency Injection Setup End

}
使用Microsoft.Extensions.Configuration;
使用Microsoft.Extensions.DependencyInjection;
公共静态IServiceProvider svcProvider=null;
私有静态void LoadDIStartup()
{
//依赖项注入设置启动
var env=Environment.GetEnvironmentVariable(“ASPNET_环境”);
WriteLine(“ASPNET_环境:{0}”,env);
var configuration=new ConfigurationBuilder()
.AddJsonFile(“appsettings.json”,可选:false)
.Build();
svcProvider=newservicecolection()
.AddOptions()
.Configure(configuration.GetSection(“AppConfig”))
.AddConfigFile()文件
.BuildServiceProvider();
IgniteDependencyResolver.SetProvider(svcProvider);
IgniteDependencyResolver.SetConfiguration(配置);
IgniteDependencyResolver.Bind();
//依赖项注入设置结束
}
我的包配置如下:

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="BouncyCastle" version="1.8.2" targetFramework="net462" />
  <package id="EntityFramework" version="6.2.0" targetFramework="net462" />
  <package id="log4net" version="2.0.8" targetFramework="net462" />
  <package id="MailKit" version="2.0.5" targetFramework="net462" />
  <package id="Microsoft.Extensions.Configuration" version="2.1.1" targetFramework="net462" />
  <package id="Microsoft.Extensions.Configuration.Abstractions" version="2.1.1" targetFramework="net462" />
  <package id="Microsoft.Extensions.Configuration.Binder" version="2.1.1" targetFramework="net462" />
  <package id="Microsoft.Extensions.Configuration.FileExtensions" version="2.1.1" targetFramework="net462" />
  <package id="Microsoft.Extensions.Configuration.Json" version="2.1.1" targetFramework="net462" />
  <package id="Microsoft.Extensions.DependencyInjection" version="2.1.1" targetFramework="net462" />
  <package id="Microsoft.Extensions.DependencyInjection.Abstractions" version="2.1.1" targetFramework="net462" />
  <package id="Microsoft.Extensions.FileProviders.Abstractions" version="2.1.1" targetFramework="net462" />
  <package id="Microsoft.Extensions.FileProviders.Physical" version="2.1.1" targetFramework="net462" />
  <package id="Microsoft.Extensions.FileSystemGlobbing" version="2.1.1" targetFramework="net462" />
  <package id="Microsoft.Extensions.Primitives" version="2.1.1" targetFramework="net462" />
  <package id="MimeKit" version="2.0.5" targetFramework="net462" />
  <package id="Newtonsoft.Json" version="11.0.2" targetFramework="net462" />
  <package id="Serilog" version="2.7.1" targetFramework="net462" />
  <package id="System.Buffers" version="4.5.0" targetFramework="net462" />
  <package id="System.Memory" version="4.5.1" targetFramework="net462" />
  <package id="System.Numerics.Vectors" version="4.5.0" targetFramework="net462" />
  <package id="System.Runtime.CompilerServices.Unsafe" version="4.5.1" targetFramework="net462" />
</packages>

编辑:


添加了上面的using语句。它就在那儿,但我复印的时候没看到

您缺少一个using指令。@AluanHaddad是我添加的。它就在那里。还有什么遗漏吗?我想你需要更多的使用我不认为这些是正确的。如果您单击IDE中的快速修复程序,它将提示您导入正确的修复程序。显然,您也可以在线搜索该方法并查看其定义位置。只需搜索添加选项,您将在文档中找到它,并查看定义它的命名空间的位置is@AluanHaddad找到了。缺少的是Microsoft.Extensions.Options。谢谢