gpt4 book ai didi

c# - IAppbuilder.UseWebApi 有什么作用?

转载 作者:IT王子 更新时间:2023-10-29 04:12:43 25 4
gpt4 key购买 nike

我最近一直在开发一个具有 API 的 MVC 站点,在 startup.cs 中有一行内容为 app.UseWebApi。我做了一些搜索,但找不到关于它的作用的合适答案。有人可以为我解释这个概念吗?谢谢!

最佳答案

它将 ASP.NET Web API 配置为在 OWIN 之上运行. OWIN 抽象了一个 Web 服务器,您可以在 IIS 和 HTTP.SYS 之上运行它,这允许您在自己的控制台应用程序中提供 Web 服务器。更具体地说,在 IIS 或 HTTP.SYS 之上运行的部分是 Katana这是 OWIN 规范的实现。

通过调用 app.UseWebApi,您可以将 OWIN/Katana 配置为通过 ASP.NET Web Api 发送 Web 请求,在 OWIN 术语中它被视为中间件。这需要 NuGet 包 Microsoft.AspNet.WebApi.Owin .

有趣的是,ASP.NET MVC 5 不能配置为 OWIN/Katana 中间件。它依赖于 System.Web 并期望存在 HttpContext 单例,因此它必须在 IIS 之上运行。但是,可以在 MVC 项目中使用的几个 NuGet 包(例如用于身份验证)构建在 OWIN 之上,而不是依赖于 HttpContext,这使得它们更有用。这就是为什么您会在 MVC 项目中看到 OWIN 的一种解释。

关于c# - IAppbuilder.UseWebApi 有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38308905/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com