2017-02-13 4 views
-1

私のStartup.csでAppSettings.csからいくつかの値を読み込むために次を使用しようとしています。以前のプロジェクトで問題なく同じ方法を使用しました。あいまいな呼び出しservices.Configure <AppSettings>

Error CS0121 The call is ambiguous between the following methods or properties: Microsoft.Extensions.DependencyInjection.OptionsServiceCollectionExtensions.Configure<TOptions>(Microsoft.Extensions.DependencyInjection.IServiceCollection, Microsoft.Extensions.Configuration.IConfiguration) and Microsoft.Extensions.DependencyInjection.OptionsConfigurationServiceCollectionExtensions.Configure<TOptions>(Microsoft.Extensions.DependencyInjection.IServiceCollection, Microsoft.Extensions.Configuration.IConfiguration)

それは私が重複/互換性のない依存関係を持っているが、私はそれを見つける見つけることができます表示されます。

public void ConfigureServices(IServiceCollection services) 
    { 
     // Add framework services. 
     services.AddApplicationInsightsTelemetry(Configuration); 

     services.AddMvc(); 

     services.Configure<AppSettings>(Configuration.GetSection("AppSettings")); 
    } 

は、しかし、今、次のエラーを取得しています。以下は私のプロジェクトです.json:

{ 
    "dependencies": { 
    "Microsoft.ApplicationInsights.AspNetCore": "1.0.0", 
    "Microsoft.AspNet.Mvc.Core": "6.0.0-rc1-final", 
    "Microsoft.AspNet.Mvc.ViewFeatures": "6.0.0-rc1-final", 
    "Microsoft.AspNetCore.Diagnostics": "1.0.0", 
    "Microsoft.AspNetCore.Mvc": "1.0.1", 
    "Microsoft.AspNetCore.Razor.Tools": { 
     "version": "1.0.0-preview2-final", 
     "type": "build" 
    }, 
    "Microsoft.AspNetCore.Routing": "1.0.1", 
    "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0", 
    "Microsoft.AspNetCore.Server.Kestrel": "1.0.1", 
    "Microsoft.AspNetCore.StaticFiles": "1.0.0", 
    "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0", 
    "Microsoft.Extensions.Configuration.Json": "1.0.0", 
    "Microsoft.Extensions.Logging": "1.0.0", 
    "Microsoft.Extensions.Logging.Console": "1.0.0", 
    "Microsoft.Extensions.Logging.Debug": "1.0.0", 
    "Microsoft.Extensions.Options.ConfigurationExtensions": "1.0.0", 
    "Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0", 
    "System.Data.SqlClient": "4.1.0", 
    "tessitura.nuget": "1.0.0" 
    }, 

    "tools": { 
    "BundlerMinifier.Core": "2.0.238", 
    "Microsoft.AspNetCore.Razor.Tools": "1.0.0-preview2-final", 
    "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final" 
    }, 

    "frameworks": { 
    "net462": { 
     "frameworkAssemblies": { 
     "System.Web": "4.0.0.0", 
     "System.Web.Services": "4.0.0.0" 
     } 
    } 
    }, 

    "buildOptions": { 
    "emitEntryPoint": true, 
    "preserveCompilationContext": true 
    }, 

    "publishOptions": { 
    "include": [ 
     "wwwroot", 
     "**/*.cshtml", 
     "appsettings.json", 
     "web.config" 
    ] 
    }, 

    "scripts": { 
    "prepublish": [ "bower install", "dotnet bundle" ], 
    "postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ] 
    } 
} 

多くの類似した投稿を見ていますが、解決策はまだ見つかりませんでした。これは私がナッツを運転している誰も助けてくださいできますか?

おかげ

編集のVisual Studioを幸せに見えたが、私は実行しようとしたとき、それは次のエラーで提示した「Microsoft.Extensions.Options.ConfigurationExtensions」を、コメントアウトしようとしました

enter image description here

+0

エディタであいまいなコードの下にアンダーラインが表示されませんか? Ctrlキーを押した場合。通常、完全修飾名を使用するなど、修正するためのアクションを提示します。そうでない場合は、ソリューションを右クリックして、クリーンで再起動してみてください。異なる名前空間を持つため、依存関係の問題であるとは思えません。 – James

+0

「Microsoft.Extensions.Options.ConfigurationExtensions」のコメントを外したままにしておくと、「」という設定ビットの下に行が表示されますが、Ctrlキーを押してください。解決策はありません。依存関係をコメントアウトすると、行は消えますが、実行すると500のエラーが発生します。 – HuwD

+2

古代ベータ版のASP.NET Coreとリリース版を混在させないでください!彼らは完全に異なるパッケージ名を持っています。また、2016年7月より古いチュートリアル/ブログを使用しないようにすると、古すぎるため、古代のパッケージ名を使用します。 「Microsoft.AspNet.Mvc.Core」:「6.0.0-rc1-final」、「Microsoft.AspNet.Mvc.ViewFeatures」:「6.0.0-rc1-final」、「Microsoft.AspNetcore」。 Mvc.Core ":" 1.0.0 "、" Microsoft.AspNetCore.Mvc.ViewFeatures ":" 1.0.0 "、またはそれ以上、1.0.3を使用します。 1.0.3より低いバージョンは脆弱であることがわかっています – Tseng

答えて

0

長年にわたり、最も強く正直なアプローチは、コードを作業してどの依存関係が問題を引き起こしているかを知るまでプロジェクトファイルの部分をコメントアウトすることです。

+0

これを試しましたか?結果の編集を参照してください。 – HuwD