Open棟梁Project - マイクロソフト系技術情報 Wiki

目次

概要

ホスティング ランタイム

IIS

OwinHost?.exe

OWINミドルウェアのインストール

ASP.NET Identity

NuGet で「AspNet?.Identity」をインストール。

Install-Package Microsoft.AspNet.Identity.Owin
Install-Package Microsoft.AspNet.Identity.EntityFramework
Update-Package

Microsoft.AspNet?.Identity.EntityFramework?は、
UserStore?クラスを自前で実装する場合、不要になる。

ASP.NET SignalR

NuGet で「SignalR」をインストール。

Install-Package Microsoft.AspNet.SignalR
Update-Package

ASP.NET Web API

NuGet で「WebApi?.OwinSelfHost?」をインストール。
※ セルフホストの場合

Install-Package Microsoft.AspNet.WebApi.OwinSelfHost
Update-Package

Startupクラスの追加・登録

OWINパイプラインでミドルウェアをつなげ全体を処理する。

Startupクラスは、

を指定して使用できるようにする。

共通

ASP.NET Identity

Startup クラスで ConfigureAuth?(app)メソッドを実行する。

public partial class Startup
{
  public void Configuration(IAppBuilder app)
  {
    ConfigureAuth(app);
    app.MapSignalR();
  }
}

ConfigureAuth?メソッドはテンプレート上、Partialクラスに定義されている。

結構大きめの実装なので割愛

実際に[認証の変更]→[個人のユーザアカウント]のオプションで
プロジェクトテンプレートを使用してプロジェクトを生成して確認して下さい。

ASP.NET SignalR

Startup クラスで app.MapSignalR()メソッドを実行する。

public partial class Startup
{
  public void Configuration(IAppBuilder app)
  {
    ConfigureAuth(app);
    app.MapSignalR();
  }
}

ASP.NET Web API

Startup クラスで Routing定義を行いapp.UseWebApi?()メソッドを実行する。
※ セルフホストの場合

public static class Startup
 {
   public static void ConfigureApp(IAppBuilder app)
   {
     // Configure Web API for self-host. 
     HttpConfiguration config = new HttpConfiguration();

     config.Routes.MapHttpRoute(
      name: "DefaultApi",
      routeTemplate: "api/{controller}/{id}",
      defaults: new { id = RouteParameter.Optional }
    );

    app.UseWebApi(config);
  }
}

.NET Frameworkのテンプレートでは、Routing定義は、
Global.aspxのApplication_Startから呼びだされる
RouteConfig?クラスのRegisterRoutes?メソッドで実行されれている。

既定のプロジェクト・テンプレートの調査

VS2010

WebForms?

OWIN

MVC

OWIN

VS2012

WebForms?

MVC

VS2013

OWIN化対応がなされた。

WebForms?

MVC

VS2015

ASP.NET Coreがサポートされた。

.NET Framework

大枠、2013と同じ。

ASP.NET Core

ASP.NET Core用のテンプレートはすべてOWIN化対応がなされている。

参考

OWINミドルウェア

手順


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS