📜  nuget system.web.http.webhost (1)

📅  最后修改于: 2023-12-03 15:18:02.457000             🧑  作者: Mango

NuGet System.Web.Http.WebHost

System.Web.Http.WebHost is a NuGet package that enables hosting of Web API controllers in the ASP.NET pipeline without invoking IIS or IIS Express.

Usage

To use this package, simply include it in your project through NuGet package manager or install it via the command line using the following command:

PM> Install-Package System.Web.Http.WebHost

Once installed, you can use the HttpSelfHostServer class to create a self-hosted server for your API controllers.

Here's an example of how to create a self-hosted server for your API controllers using HttpSelfHostServer:

using System;
using System.Web.Http;
using System.Web.Http.SelfHost;

namespace SelfHostedServer
{
    class Program
    {
        static void Main(string[] args)
        {
            var config = new HttpSelfHostConfiguration("http://localhost:8080");

            config.MapHttpAttributeRoutes();

            using (var server = new HttpSelfHostServer(config))
            {
                server.OpenAsync().Wait();

                Console.WriteLine("Server is listening on http://localhost:8080");

                Console.ReadLine();
            }
        }
    }
}

In this example, we're creating a self-hosted server that listens on port 8080 at http://localhost:8080. We're also registering any API controllers that include the [Route] attribute by calling config.MapHttpAttributeRoutes().

Conclusion

In conclusion, System.Web.Http.WebHost is a powerful NuGet package that enables the hosting of Web API controllers in the ASP.NET pipeline without IIS or IIS Express. By using this package, you can easily create self-hosted servers for your API controllers and enjoy the benefits of a flexible and scalable hosting solution.