【发布时间】:2018-07-11 07:06:52
【问题描述】:
我正在尝试在 Windows 服务中自托管 OWIN。当我通过 Visual Studio 2017 进行调试时,它运行良好,但是当我尝试在发布版本中运行该服务时,出现以下错误。
未处理的异常:System.EntryPointNotFoundException:尝试加载应用程序时出现以下错误。 - 在类“., Vps.SysComm.Service, Version=3.12.0.0, Culture=neutral, PublicKeyToken=null”中找不到“配置”方法。 在 Microsoft.Owin.Hosting.Engine.HostingEngine.ResolveApp(StartContext 上下文) 在 Microsoft.Owin.Hosting.Engine.HostingEngine.Start(StartContext 上下文) 在 Microsoft.Owin.Hosting.Starter.DirectHostingStarter.Start(StartOptions 选项) 在 Microsoft.Owin.Hosting.Starter.HostingStarter.Start(StartOptions 选项) 在 Microsoft.Owin.Hosting.WebApp.StartImplementation(IServiceProvider 服务,StartOptions 选项) 在 Microsoft.Owin.Hosting.WebApp.Start(StartOptions 选项) 在 Microsoft.Owin.Hosting.WebApp.Start[TStartup](StartOptions 选项) 在 ..() 在 ..(String[] )
有趣的是 .用于启动类名称。
这是我的创业课程。
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);
【问题讨论】:
-
是否有不止一个启动类并且可能混淆了命名空间?
-
实际上@BoasEnkler 你在一定程度上是对的。我正在构建混淆,由于某种原因,它无法匹配命名空间。这就是为什么我认为他们是空白的。一旦我建立了未混淆的,它就起作用了。谢谢。仍然不确定如何使其工作变得模糊。
标签: c# asp.net-web-api owin