首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >IHostBuilder不包含ConfigureWebHostDefaults的定义

IHostBuilder不包含ConfigureWebHostDefaults的定义
EN

Stack Overflow用户
提问于 2019-09-25 11:42:07
回答 1查看 37.6K关注 0票数 37

我正在尝试使用新的GenericHost in .NET Core3.0 documented 这里,但是我得到了一个非常基本的错误,statsIHostBuilder没有包含ConfigureWebHostDefaults函数的定义。

看看这里的ASP.NET 3.0文档,关于IHostBuilder接口这里,我看不到对ConfigureWebHostDefaults的任何引用,所以我有点困惑。

我正在为Microsoft.Extensions.HostingMicrosoft.Extensions.Hosting.Abstractions使用3.0.0包,但忍不住觉得我遗漏了一些非常明显的东西,或者ConfigureWebHostDefaults因为某种原因被删除了?

Program.cs的更新屏幕截图

更新-- .csproj文件

代码语言:javascript
运行
复制
<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp3.0</TargetFramework>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.Hosting" Version="2.2.7" />
    <PackageReference Include="Microsoft.Extensions.Hosting" Version="3.0.0" />
    <PackageReference Include="Microsoft.Extensions.Hosting.Abstractions" Version="3.0.0" />
  </ItemGroup>

</Project>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-25 11:47:56

using Microsoft.Extensions.Hosting一起,ConfigureWebHostDefaults还需要using Microsoft.AspNetCore.Hosting;如下所示:

代码语言:javascript
运行
复制
using Microsoft.AspNetCore.Hosting; //<-- Here it is
using Microsoft.Extensions.Hosting;

namespace MyApp
{
    public class Program
    {
        public static void Main(string[] args)
        {
            CreateWebHostBuilder(args).Build().Run();
        }

        public static IHostBuilder CreateWebHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args)
                .ConfigureWebHostDefaults(webBuilder =>
                {
                    webBuilder.UseStartup<Startup>();
                });
    }
}

此外,看起来您的项目是一个控制台应用程序。这就是问题所在。ConfigureWebHostDefaults仅适用于网络应用程序。因此,您可以将控制台应用程序转换为Web应用程序,方法是将Sdk="Microsoft.NET.Sdk"替换为.csproj文件中的Sdk="Microsoft.NET.Sdk.Web",如下所示:

代码语言:javascript
运行
复制
<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFramework>netcoreapp3.0</TargetFramework>
    <AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>
  </PropertyGroup>

</Project>
票数 63
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58097568

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档