[英]self-hosting OWIN in windows service, no configuration method.
我試圖在Windows服務中自托管OWIN。 當我通過Visual Studio 2017調試時,效果很好,但是當我嘗試在發布版本中運行服務時,出現以下錯誤。
未處理的異常:System.EntryPointNotFoundException:嘗試加載應用程序時發生以下錯誤。 -在類'。,Vps.SysComm.Service,Version = 3.12.0.0,Culture = neutral,PublicKeyToken = null'中找不到'Configuration'方法。 在Microsoft.Owin.Hosting.Starting.DirectHostingStarter.Start(StartOptions options)處的Microsoft.Owin.Hosting.Engine.HostingEngine.Start(StartContext context)在Microsoft.Owin.Hosting.Engine.HostingEngine.ResolveApp(StartContext context) Microsoft.Owin的Microsoft.Owin.Hosting.WebApp.Start(StartOptions選項)的.Owin.Hosting.Starter.HostingStarter.Start(StartOptions選項)(Microsoft.Owin.Hosting.WebApp.Start(StartOptions選項))。 ..()位於..(String [])處的Hosting.WebApp.Start [TStartup](StartOptions options)
有趣的是。 啟動類名稱。
這是我的入門班。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web.Http;
using Microsoft.Owin;
using Owin;
[assembly: OwinStartup(typeof(Vps.SysComm.Service.Startup))]
namespace Vps.SysComm.Service
{
public class Startup
{
// This code configures Web API. The Startup class is specified as a type
// parameter in the WebApp.Start method.
public void Configuration(IAppBuilder appBuilder)
{
// Configure Web API for self-host.
HttpConfiguration config = new HttpConfiguration();
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
appBuilder.UseWebApi(config);
}
}
}
在我的主要服務啟動方法中
string baseAddress = "http://localhost:9000";
_sysCommAPI = WebApp.Start<Startup>(url: baseAddress);
您可以嘗試Thread.Sleep(100); 內部配置方法。 希望它會工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.