open web interface for .net

Post on 24-May-2015

922 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

OWIN defines a standard interface between .NET web servers and web applications. The goal of the OWIN interface is to decouple server and application, encourage the development of simple modules for .NET web development, and, by being an open standard, stimulate the open source ecosystem of .NET web development tools.

TRANSCRIPT

Open Web Interface for .NET

Your Presenter

Shravan Kumar Kasagoni

Software Engineer @ Thomson Reuters

Microsoft MVP – ASP.NET / IIS | MCP

http://theshravan.net | @techieshravan

Agenda

Evolution of ASP.NET

Evolution of Web Frameworks

Introduction to OWIN

Introduction to Katana

Evolution of ASP.NET

ASP.NET

ASP.NET WEB FORMS

ASP.NET MVC

ASP.NET WEB API

SignalR

Evolution of Web Frameworks

Other .NET Web Frameworks

Nancy

FubuMVC

Simple.Web

Inspiration for OWIN

Ruby’s Rack

Python’s WSGI

Express.js for node

Introduction to OWIN

What is OWIN?

OWIN stands for Open Web Interface for .NET

OWIN defines a standard interface between .NET web servers and web applications.

The goal of the OWIN interface is to decouple server and application, encourage the development of simple modules for .NET web development, and, by being an open standard, stimulate the open source ecosystem of .NET web development tools.

Introduction to Katana

What is Katana?

Katana is Microsoft’s OWIN implementation

Katana is a collection of projects for supporting OWIN with various Microsoft components.

Standard ASP.NET Web Application Hosting

Web Application

ASP.NET

IIS

Katana Architecture

Web Application

MIDDLEWARE

SERVER

HOST

Host

Host Responsibilities

Managing the underlying process

Orchestrating the workflowSelection of a server

Construction of an OWIN pipeline (Through which requests will be handled)

Hosting options for Katana-based applications

IIS/ASP.NETEnabled by installing the Microsoft.AspNet.Host.SystemWeb NuGet package

OwinHost.exeA pre-built executable

Custom Host

Server

Server Responsibilities

Open a network socket, listen for requests, and send them through the pipeline of OWIN components specified by the user

OWIN pipeline is specified in the application developer’s Startup class

Server options for Katana-based applications

IISMicrosoft.Owin.Host.SystemWeb NuGet package

Microsoft.Owin.Host.HttpListener

Middleware

Middleware

OWIN components are known as middleware

Implementation Of OWIN Components

OWIN middleware component needs to implement the OWIN application delegate

Func<IDictionary<string, object>, Task>

Func<IDictionary<string, object>, Task>

IDictionary<string, object>Data structure is responsible for storing all of the state necessary for processing an HTTP request and response, as well as any relevant server state.

Demo Time

Resources

http://asp.net

http://katanaproject.codeplex.com

http://owin.org

Thank You

top related