我正在嘗試使用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