簡體   English   中英

從/使用控制台構建的 ASP.NET Web Api

[英]ASP.NET Web Api built from/with Console

我希望能夠使用打開並輸​​出到ConsoleASP.Net Web Api

原因是因為我在啟動 Web Api 之前初始化了很多元素和對象。 然后我使用依賴注入注冊這些對象以在我的ApiController訪問它們。

當我啟動 Web Api 時,我需要打開控制台,這樣我才能看到事情是如何初始化的以及需要多長時間。

我知道可以將日志從 Web Api 發送到調試控制台,但這不是我想要的。

也許有一種方法可以啟動控制台項目並將 Web Api 框架合並到其中?

OWIN方式:

  1. 創建控制台應用程序
  2. 將“Microsoft.AspNet.WebApi.OwinSelfHost”包及其依賴項添加到項目中
  3. 添加具有以下內容的 Startup.cs 文件:

     using Owin; using System.Web.Http; namespace YourConsoleAppProjectNamespace { public class Startup { public void Configuration(IAppBuilder appBuilder) { HttpConfiguration config = new HttpConfiguration(); config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{id}", defaults: new { id = RouteParameter.Optional } ); appBuilder.UseWebApi(config); } } }
  4. 修改項目的 Main()

     using Microsoft.Owin.Hosting; using System; namespace YourConsoleAppProjectNamespace { class Program { static void Main(string[] args) { WebApp.Start<Startup>("http://localhost:3333/"); Console.ReadLine(); // block main thread } } }
  5. 定義一個帶有操作方法和測試的控制器。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM