ServiceStack/はじめに/最初のWebサービスを作ってみる

提供: MonoBook
< ServiceStack
2013年6月25日 (火) 07:26時点における180.29.222.152 (トーク)による版 (ページの作成:「== ステップ1: プロジェクトを作る == ServiceStackはいくつかの方法でホストすることができる。 * コンソールアプリケーシ...」)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

ステップ1: プロジェクトを作る

ServiceStackはいくつかの方法でホストすることができる。

  • コンソールアプリケーション
  • Windowsサービス
  • ASP.NETASP.NET MVCなどの一部として同化する


このチュートリアルでは「空のASP.NET(ASP.NET MVCじゃないよ)」上にServiceStackを使ったWebアプリを作ってみる。

ステップ2: ServiceStackをインストールする

プロジェクトがServiceStackを使えるようにするには大きく2種類の方法がある。

NuGetを利用する

PM> Install-Package ServiceStack

これ一行でServiceStack関連のNuGetパッケージがどっさり再帰的にプロジェクトに追加され、Web.configなどある程度は自動設定される。なお、ServiceStackのNuGetパッケージは機能ごとに個別に提供されているので、本格的にServiceStackを使う際には必要なパッケージのみを入れるようにするとよい。

なお、MonoDevelopXamarin StudioでもNuGet Addin for MonoDevelop and Xamarin Studioを用いることこの方法で簡単に環境構築することができる。

手動で頑張る

最新のソースコードダウンロードして自分でビルドし、できあがったアセンブリプロジェクトに追加する。

アセンブリを追加したら、次にWeb.configファイルを編集してServiceStackを登録する。ServiceStackを使ったWebアプリがWebサーバーのルートパスに配置されるのであれば以下のような感じである。

<system.web>
  <httpHandlers>
    <add path="*" type="ServiceStack.WebHost.Endpoints.ServiceStackHttpHandlerFactory, ServiceStack" verb="*"/>
  </httpHandlers>
</system.web>

<!-- Required for IIS 7.0 (and above?) -->
<system.webServer>
  <validation validateIntegratedModeConfiguration="false" />
  <handlers>
    <add path="*" name="ServiceStack.Factory" type="ServiceStack.WebHost.Endpoints.ServiceStackHttpHandlerFactory, ServiceStack" verb="*" preCondition="integratedMode" resourceType="Unspecified" allowPathInfo="true" />
  </handlers>
</system.webServer>

他のWebフレームワーク(ASP.NET MVCを含む)と競合を避けつつカスタムパスにServiceStackアプリをホストする場合は以下を参照するとよい。 https://github.com/ServiceStack/ServiceStack/wiki/Run-servicestack-side-by-side-with-another-web-framework

ステップ3: Webサービスを作ってみる

ステップ4: Webサービスを登録してみる

動かしてみる

トラブルシューティング

外部リンク