Upgrade to Pro — share decks privately, control downloads, hide ads and more …

OWIN, Katana & One ASP.NET... uhmm... what?

OWIN, Katana & One ASP.NET... uhmm... what?

This presentation was hold in Zurich in September 2013. It covers an overview over "One ASP.NET", Katana and OWIN and how these 3 pieces are connected.


Robert Muehsig

September 10, 2013

More Decks by Robert Muehsig

Other Decks in Programming


  1. OWIN, Katana, OneASP.NET… Uhm… what?

  2. Hi! Robert Muehsig @robert0muehsig Code-Inside.de/Blog Code-Inside.de/Blog-In ASP.NET MVP

  3. Like. HTTP „The Web“ Development in General „The Microsoft Stack“

    Ohh… and I love to travel (for vacation – not pure business)  Nerd-Life.
  4. Work. Working in Eschlikon, Thurgau @ OneOffixx AG Moved 2012

    from Dresden, Germany to Switzerland Former Employer of Deutsche Telekom AG
  5. Work. OneOffixx. Product around Office Productivity. My part: Cloud Web

    Build Management Uhm… Moar.
  6. Topic. OWIN, Katana & One ASP.NET

  7. Topic. 1 Talk, 3 Topics?

  8. Topic. Nope.

  9. Topic. Connected. Somehow.

  10. OneASP.NET The easy one…

  11. ASP.NET History Release 2002 with „WebForms“ Fun for ASP orWinForms

    Developer One big, monolithic Framework Coupled to System.Web & IIS Not easy to test „Unflexible“
  12. In 2007… ASP.NET MVC was born.

  13. ASP.NET MVC Seperation of Concerns Much more Control „Cleaner“-Approach Shipped

  14. *later*

  15. ASP.NET „Family“ WebForms MVC Dynamic Data Web Pages

  16. None
  17. None
  18. From a Community- Perspective:

  19. For ASP.NET MVC!

  20. SaveMyControls.aspx

  21. *One* ASP.NET

  22. ASP.NET MVC Web Pages Web Forms Single Pages Web API

    SignalR Sites Services
  23. ASP.NET *You* MVC Web Pages Web Forms Single Pages Web

    API SignalR *You* Sites Services
  24. „One ASP.NET“ Covers Tooling „Scaffolding“* VS „External Hosting“ Runtime Identity

    System Routing Extensibility Hosting * WebForms Scaffolding was removed from RC but will be back in update 1
  25. Demo One ASP.NET & Identity

  26. OWIN So... a new fancy acronym?

  27. Define. It‘s a Spec.

  28. Define. For what?

  29. Define. Recap History of ASP.NET

  30. Goals. „New Direction“ Leightweight & Modular

  31. Inspirations. Ruby with Rack Phyton with WSGI Node.js with Connect

  32. Inspirations. Interface between Web Server & Web Frameworks

  33. Ruby „Rack“ Inspirations. Multiple WebHosts! WEBrick, Mongrel...

  34. Ruby „Rack“ Inspirations. Multiple Frameworks! Rails, Sinatra...

  35. Ruby „Rack“ Inspirations. „Middleware-Concept“ Logging, Auth, Caching Pipeline Pattern.

  36. Contract. using AppFunc = Func< IDictionary<string, object>, // env Task>;

    // done
  37. Contract. owin.RequestBody owin.RequestHeaders owin.RequestMethod owin.Version server.IsLocal ...

  38. Overview. Application Application Framework Server Host

  39. State. 1.0 Version since last Year Organized via a Google

  40. Owin.dll Just Spec? public interface IAppBuilder { IDictionary<string, object> Properties

    { get; } IAppBuilder Use(object middleware, params object[] args); object Build(Type returnType); IAppBuilder New(); }
  41. Katana The Microsoft-OWIN-Glue

  42. Define. Microsoft Components around the OWIN Spec. But Open Source.

  43. Microsofts Work. IIS & HttpListener OwinHost.exe Visual Studio Tooling Common

    Middleware Make ASP.NET Frameworks „OWIN“-Compatible
  44. Goals. Composability Performance & Scalability Portability

  45. Overview. Application Application Framework • SignalR • WebApi Server •

    SystemWeb • HttpListener Host • IIS • Custom • OwinHost.exe
  46. Demo Katana

  47. Future. More Hosts More Frameworks More Middleware Flexibility!

  48. „Problems“. Sometimes hard to discover the API Critics from Middleware

    developer System.Web.dll
  49. Done. Questions? (I have many... )