web-dev-qa-db-ja.com

WebHostという名前は現在のコンテキストに存在しません

次のdocs.Microsoftの投稿を利用して、ASP.NET Core 1.xからv2.0に移行しています。 https://docs.Microsoft.com/en-us/aspnet/core/migration/1x-to-2x /

私はその投稿で言及されたすべての変更をほぼ完了しました。しかし、トラブルを引き起こしているエラーが1つあります。

Program.csファイルは次のとおりです。

using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Builder;
using Microsoft.Extensions.Configuration;

namespace MeridiaCoreAPI
{
    public class Program
    {
        public static void Main(string[] args)
        {
            BuildWebHost(args).Run();
        }

        public static IWebHost BuildWebHost(string[] args) =>
           WebHost.CreateDefaultBuilder(args)
               .UseStartup<Startup>()
            .ConfigureAppConfiguration((hostContext, config) =>
            {
            // delete all default configuration providers
            config.Sources.Clear();
                config.AddJsonFile("myconfig.json", optional: true);
            })
               .Build();
    }
}

エラーメッセージは次のとおりです。

Suppression State
Error   CS0103  The name 'WebHost' does not exist in the current context

解決策、回避策、またはヒントをいただければ幸いです。ありがとう。

15
Azaz ul Haq

WebHostクラスが存在するMicrosoft.AspNetCoreに付属するアセンブリMicrosoft.AspNetCore.All NuGetパッケージ。この問題を解決するには、このNuGetパッケージをインストールし、次のusingディレクティブをソースファイルに追加します。

using Microsoft.AspNetCore;

23
CodeFuller

CodeFullerの回答が示されている アセンブリでWebHostクラスが利用可能Microsoft.AspNetCoreすべてを必要としない場合は、パッケージを入手するだけで_Microsoft.AspNetCore

1
Erik Philips