我正在尝试使用github ServiceStack.UseCases/ImageResizer项目,并使其自行托管。我认为这很容易,所以我引用了这个:https://github.com/ServiceStack/ServiceStack/wiki/Self-hosting但是AppSelfHostBase在项目中未定义。然后,我尝试AppHostHttpListenerBase并让我的地方,我至少可以希望建立我自己的主机了这一点:ServiceStack.UseCases自行托管失败
public class AppHost : AppHostHttpListenerBase
{
public AppHost() : base("Image Resizer", typeof(AppHost).Assembly) {}
public override void Configure(Container container) {}
}
public class Global : System.Web.HttpApplication
{
protected void Application_Start(object sender, EventArgs e)
{
AppHost appHost = new AppHost();
appHost.Init();
appHost.Start("http://*:1301/");
}
}
我再转移项目到我的CentOS框单。在monodevelop中,我能够构建和运行,但在运行时失败。看起来它仍然认为它是一个Mvc或Asp.Net项目。
除了这个尝试,我有一个工作的自己托管的ServiceStack项目在那里运行,但它不是这个ImageResizer,所有试图让我现有的项目包括新项目也失败了。
我也尝试将自己托管的项目的一部分代码包含到新的代码中,但符号未定义。基本符号,如“ServiceStackHost”。如果我开始尝试使用Nuget并执行更多的“Install-Package”,我可以解决这个符号问题,但是之后只会导致其他已解决的符号不再起作用。我并不完全了解Nuget。任何想法,前进的方式将不胜感激。
混淆的部分是从Nuget下载什么版本的项目与Github中的什么版本。我克隆了Github中ServiceStack.UseCases/ImageResizer的内容,并且我没有做任何修改。我想我的错误是认为最新的ServiceStack.UseCases是更高版本。因此,如果我发现ServiceStack 4.0或更高版本的文档,我不能期望它甚至可以与使用ServiceStack构建的项目的新Github下载一起工作。 - 这就是它真正的结果。 Github有各种各样的版本,并不总是最新的.Thx。 – tradetree 2014-09-26 13:47:38
@tradetree所有[ServiceStack Apps](https://github.com/ServiceStackApps)和[Live Demos](https://github.com/ServiceStackApps/LiveDemos)已升级到v4。您可以在v3分支中找到一些[v3示例](https://github.com/ServiceStackV3/ServiceStackV3/blob/master/README.md#source-code-for-v3)。 – mythz 2014-09-26 14:10:40