addressalign-toparrow-leftarrow-rightbackbellblockcalendarcameraccwcheckchevron-downchevron-leftchevron-rightchevron-small-downchevron-small-leftchevron-small-rightchevron-small-upchevron-upcircle-with-checkcircle-with-crosscircle-with-pluscrossdots-three-verticaleditemptyheartexporteye-with-lineeyefacebookfolderfullheartglobegmailgooglegroupsimageimagesinstagramlinklocation-pinm-swarmSearchmailmessagesminusmoremuplabelShape 3 + Rectangle 1outlookpersonJoin Group on CardStartprice-ribbonImported LayersImported LayersImported Layersshieldstartickettrashtriangle-downtriangle-uptwitteruseryahoo

HoL: A Minimalist's Attempt At Building A Distributed Application with NancyFx

For a typical .NET developer, building a distributed application of web pages and services involves using IIS. But do you really need a full blown web server like IIS? Building a functional distributed application outside IIS is possible and quite easy. Inspired by lightweight frameworks like Java's Jetty and Python's Bottle, we'll look at creating lightweight sites and services in .NET using NancyFx. We'll see how using lightweight frameworks allow you to focus on your business logic without letting heavyweight frameworks and processes get in the way. This hands on lab will get you started with a self-hosted NancyFx application. We'll also look at incorporating Razor views, Forms Authentication, default error pages, dependency injection, and much more.

About Dave

David Hoerster, a C# MVP, is a recovering corporate financial analyst and has been working with the Microsoft .NET Framework since the early 1.0 betas. He is the co-founder of BrainCredits (www.braincredits.com), a recent start-up that is hoping to change the way people learn on the web. David is an organizer of Pittsburgh TechFest, the organizer of Pittsburgh SteelCloud (a distributed application meetup), the former president of the Pittsburgh .NET User’s Group (PGHDOTNET) and is also an occasional speaker at Pittsburgh and regional user group events and conferences. David can be found rarely blogging at http://geekswithblogs.net/DavidHoerster and also is an occasional Tweeter (@DavidHoerster).

Join or login to comment.

  • Terry N.

    Sorry but I am not able to attend tonight. Hopefully next time.

    February 25, 2014

  • Ben L.

    Arg. I'm probably going to miss this one. :(

    February 25, 2014

  • David H.

    I haven't been to the Seagate building before - any suggestions on parking? See yinz tomorrow!

    February 24, 2014

    • Mike B.

      Been there once, there's visitor parking on the side opposite the river, which is where I parked with no issue, plan on parking there tomorrow night too.

      February 24, 2014

    • Rich D.

      There is a small amount of parking in front of the building, but you're probably going to be in one of the public lots around the building.

      February 24, 2014

  • David H.

    Here's some setup info for everyone attending:

    The code for the talk is up at GitHub at https://github.com/DavidHoerster/Agile.NancyHol

    Basic setup is the master branch; each step that we'll go through is numbered. E.g. next branch is "1-InitialSetup", then we'll go to "2-HelloNancy" and so on.

    I'm using VS2013, but as long as you're .NET 4.0+, you should be OK.

    I am not using any back-end persistence; the repository is just a static in-memory class, but you can roll your own. Just implement IQuoteRepository for your favorite storage engine and adjust the IoC in the AgileBootstrapper class. (We'll go through this in the lab.) I originally had this code talking with a Solr instance.

    There are four NuGet packages being used:
    * Nancy
    * Nancy.Hosting.Self
    * Nancy.Viewengines.Razor
    * Nancy.Authentication.Forms

    See you there!

    February 21, 2014

    • David H.

      Also, each branch builds upon the one before, so you can just skip to the last one (currently 8-Hooks) if you can't wait. :)

      February 21, 2014

  • Ben L.

    Why havn't I heard of Nancy? This is the first sexy thing I've seen .NET do in a while. :P Very nice.

    Are there an performance metrics between this an Web API that anyone has seen?

    February 12, 2014

    • Rich D.

      I have a friend running load tests on WebAPI, ServiceStack and NancyFx now. We could always spin up an Azure instance and hit it with the Azure load test stuff.

      1 · February 12, 2014

    • Ben L.

      It reminds me a lot of Express (Node.js) or Martini (GoLang). This is how I'd *rather* be declaring routes, honestly.

      February 12, 2014

  • Harry D.

    I'll be there

    February 12, 2014

    • David H.

      All right!!! So will I! :)

      1 · February 12, 2014

29 went

Our Sponsors

  • Omnyx

    Omnyx hosts our hands-on labs and feeds the attendees.

  • ComponentOne

    ComponentOne provided a cash donation and swag.

People in this
Meetup are also in:

Sign up

Meetup members, Log in

By clicking "Sign up" or "Sign up using Facebook", you confirm that you accept our Terms of Service & Privacy Policy