{"id":5174,"date":"2016-02-11T16:55:05","date_gmt":"2016-02-11T16:55:05","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/dotnet\/?p=5174"},"modified":"2021-09-30T12:17:55","modified_gmt":"2021-09-30T19:17:55","slug":"the-week-in-net-2112016","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/dotnet\/the-week-in-net-2112016\/","title":{"rendered":"The week in .NET &#8211; 2\/11\/2016"},"content":{"rendered":"<p>This issue of the Week in .NET is slightly late, and I apologize for that. I was visiting some customers in California for the first half of the week, and they&#8217;ve kept me very busy. I&#8217;m writing this post on the plane to Seattle. While I was in LA, <a href=\"http:\/\/www.meetup.com\/LADOTNET\/events\/228290762\/\">I also visited the LADOTNET user group, where I talked about .NET Core, C# 6, and the future of C#<\/a>. You can find links to my slides in the .NET section below.<\/p>\n<p>To read last week&#8217;s post, see <a href=\"https:\/\/blogs.msdn.microsoft.com\/dotnet\/2016\/02\/02\/the-week-in-net-222016\/\">The week in .NET \u2013 2\/2\/2016<\/a>.<\/p>\n<h2><a id=\"OnNET_12\"><\/a><a href=\"http:\/\/On.NET\">On.NET<\/a><\/h2>\n<p>Last week on On .NET, <a href=\"https:\/\/www.youtube.com\/watch?v=g2a4W6Q7aRw\">we had Scott Hunter<\/a>, who is the new director of Program Management for .NET, in other words my grand-boss.<\/p>\n<p>We&#8217;ll be live on <a href=\"https:\/\/www.youtube.com\/watch?v=BEvn9aI6rd0\">Friday 10AM Pacific Time<\/a>, instead of our usual Thursday time. I&#8217;m happy to announce that our guest for this week is Aaron Stannard. We&#8217;ll talk about <a href=\"http:\/\/getakka.net\">Akka.NET<\/a>, the actor framework for .NET, and about Aaron&#8217;s other projects <a href=\"https:\/\/github.com\/petabridge\/NBench\">NBench<\/a> and <a href=\"https:\/\/github.com\/Azure\/DotNetty\">DotNetty<\/a>.<\/p>\n<h2><a id=\"Package_of_the_week_Polly_24\"><\/a>Package of the week: Polly<\/h2>\n<p>In a world of increasingly distributed applications, exception handling is not always the most convenient way of handling transient errors and the flow associated with them. For instance, if you&#8217;re communicating with a distant service, you may want to implement a retry policy in case it fails. <a href=\"https:\/\/github.com\/App-vNext\/Polly\">Polly<\/a> provides a fluent API that easily expresses such policies.<\/p>\n<p><script src=\"https:\/\/gist.github.com\/bleroy\/33881883f87a763f5ceb.js\"><\/script><\/p>\n<h2><a id=\"Tool_of_the_week_DotNetAPIs_41\"><\/a>Tool of the week: DotNetAPIs<\/h2>\n<p><a href=\"http:\/\/dotnetapis.com\/\">DotNetAPIs<\/a> is an extremely impressive web site that acts as an API documentation aggregator and search engine for a boatload of .NET APIs and libraries. The way it can be so exhaustive is by analyzing all NuGet packages, and extracting their built-in XML documentation. It&#8217;s a great, and very useful idea. An essential new tool for all .NET developers.<\/p>\n<h2><a id=\"User_group_of_the_week_Baltimore_Software_Patterns_Practice_51\"><\/a>User group of the week: Baltimore Software Patterns Practice<\/h2>\n<p>Claudio Sanchez is going to talk at the Baltimore Software Patterns Practice group on <a href=\"http:\/\/www.meetup.com\/Baltimore-Software-Patterns-Practices\/events\/228542097\/\">Tuesday, February 16 at 7:00PM<\/a> about Slack-driven development.<\/p>\n<h2><a id=\"NET_58\"><\/a>.NET<\/h2>\n<ul>\n<li><a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/porting-to-net-core\/\">Porting to .NET Core<\/a> by Immo Landwerth.<\/li>\n<li><a href=\"http:\/\/joeduffyblog.com\/2016\/02\/07\/the-error-model\/\">Joe Duffy continues his fascinating series on Midori with a great discussion on error patterns<\/a>.<\/li>\n<li><a href=\"https:\/\/blog.rendle.io\/what-ive-learned-about-dotnet-native\/\">What I&#8217;ve learned about .NET Native<\/a> by Mark Rendle.<\/li>\n<li><a href=\"http:\/\/www.slideshare.net\/BertrandLeRoy\/net-core\">.NET Core (LADOTNET presentation)<\/a>.<\/li>\n<li><a href=\"http:\/\/www.slideshare.net\/BertrandLeRoy\/c-today-and-tomorrow\">C# Today and Tomorrow (LADOTNET presentation)<\/a>, a presentation I shamelessly stole from Mads Torgersen.<\/li>\n<li><a href=\"http:\/\/automatetheplanet.com\/windows-event-log-tips\/\">Learn how to use the Windows Event Log via C#<\/a> by Anton Angelov.<\/li>\n<li><a href=\"https:\/\/oren.codes\/2016\/02\/08\/project-json-all-the-things\/\">Project.json all the things!<\/a> by Oren Novotny.<\/li>\n<li><a href=\"http:\/\/www.strathweb.com\/2016\/02\/formatfilter-and-mediatypemappings-in-asp-net-core-1-0-mvc\/\">FormatFilter and MediaTypeMappings in ASP.NET Core 1.0 MVC<\/a> by Filip W.<\/li>\n<\/ul>\n<h2><a id=\"ASPNET_75\"><\/a><a href=\"http:\/\/ASP.NET\">ASP.NET<\/a><\/h2>\n<ul>\n<li><a href=\"http:\/\/www.danylkoweb.com\/\/Blog\/the-ultimate-guide-to-unit-testing-in-aspnet-mvc-E2\">The Ultimate Guide To Unit Testing in ASP.NET MVC<\/a> by Jonathan Danylko.<\/li>\n<li><a href=\"https:\/\/vimeo.com\/153102690\">A run around the new ASP.NET Data Protection &amp; Authorization Stacks (video)<\/a> by Barry Dorrans.<\/li>\n<li><a href=\"http:\/\/www.hossambarakat.net\/2016\/02\/03\/configuring-redis-as-asp-net-core-1-0-session-store\/\">Configuring Redis as the ASP.NET Core session store<\/a> by Hossam Barakat.<\/li>\n<li><a href=\"https:\/\/codesnob.wordpress.com\/2016\/02\/04\/release-management-using-vsts\/\">Release management using VSTS<\/a> by Alton <a href=\"http:\/\/CrossleyASP.NET\">CrossleyASP.NET<\/a>.<\/li>\n<li><a href=\"https:\/\/github.com\/joeaudette\/cloudscribe.Web.SimpleAuth\">A simple authentication library for .NET Core, because sometimes less is more<\/a> by Joe Audette.<\/li>\n<li><a href=\"http:\/\/lockmedown.com\/preventing-sensitive-data-exposure-aspnet-part1\/\">Preventing sensitive data exposure in ASP.NET Part 1<\/a> and <a href=\"http:\/\/lockmedown.com\/preventing-sensitive-data-exposure-aspnet-part2\/\">part 2<\/a> by Max R McCarty.<\/li>\n<li><a href=\"http:\/\/benfoster.io\/blog\/tagged\/multi-tenancy\">Great series on multi-tenancy with ASP.NET MVC<\/a> by Ben Foster.<\/li>\n<li><a href=\"http:\/\/adventuresinwebprogramming.blogspot.co.uk\/2016\/02\/inline-image-taghelper.html\">Inline image tag helper<\/a> by Rich Hosek.<\/li>\n<\/ul>\n<h2><a id=\"F_96\"><\/a>F#<\/h2>\n<ul>\n<li><a href=\"http:\/\/techgroup.jet.com\/blog\/2016\/02-05-the-jet-engine-we-built-in-2015\/index.html\">The Jet Engine We Built in 2015<\/a>, by Louie Bacaj.<\/li>\n<li><a href=\"http:\/\/brandewinder.com\/2016\/02\/06\/10-fsharp-scripting-tips\/\">Ten Tips for Productive F# Scripting<\/a>, by Mathias Brandewinder.<\/li>\n<li><a href=\"https:\/\/github.com\/dungpa\/dsls-in-action-fsharp\/blob\/master\/DSLCheatsheet.md\">A Cheatsheet for F#&#8217;s DSL-friendly Features<\/a>, by Anh-Dung Phan.<\/li>\n<li><a href=\"http:\/\/mikhail.io\/2016\/02\/building-a-poker-bot-card-recognition\/\">Building a Poker Bot: Card Recognition<\/a>, by Mikhail Shilkov.<\/li>\n<li><a href=\"http:\/\/www.taimila.com\/blog\/fsharp-pure-time-dependent-domain\/\">How to Keep the Domain Pure When Logic Depends on the Current Date<\/a>, by Lauri Taimila.<\/li>\n<li><a href=\"https:\/\/sachabarbs.wordpress.com\/1406-2\/\">F# for Beginners<\/a>, by Sascha Barbs.<\/li>\n<\/ul>\n<p>Check out <a href=\"https:\/\/sergeytihon.wordpress.com\/category\/f-weekly\/\">F# Weekly<\/a> for more great content from the F# community.<\/p>\n<h2><a id=\"Games_108\"><\/a>Games<\/h2>\n<ul>\n<li><a href=\"https:\/\/devblogs.microsoft.com\/visualstudio\/visual-studio-tools-for-unity-2-2\/\">Visual Studio Tools for Unity 2.2<\/a>, by Jb Evain.<\/li>\n<li><a href=\"http:\/\/blogs.unity3d.com\/2016\/02\/10\/valve-brings-steamvr-to-the-unity-technologies-platform\/\">Valve Brings SteamVR to Unity<\/a>, by JP Hawkins.<\/li>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=2hYDtxCtzdA\">Keynote from the Vision Summit 2016<\/a>.<\/li>\n<\/ul>\n<h3><a id=\"Global_Game_Jam_2016_Submission_115\"><\/a>Global Game Jam 2016 Submission<\/h3>\n<p>Become an explorer who has encountered a small tribe in <a href=\"http:\/\/globalgamejam.org\/2016\/games\/cannibroth\">Cannibroth<\/a>. The tribe only communicates through dance and you must respond with the proper moves or be tossed into the pot and turned into carrot food!<\/p>\n<p><img style=\"width: 500px;\" alt=\"Cannibroth\" \/><\/p>\n<p>And this is it for this week!<\/p>\n<h2><a id=\"Contribute_to_the_week_in_NET_124\"><\/a>Contribute to the week in .NET<\/h2>\n<p>As always, this weekly post couldn&#8217;t exist without community contributions, and I&#8217;d like to thank all those who sent links and tips. You can participate too. Did you write a great blog post, or just read one? Do you want everyone to know about an amazing new contribution or a useful library? Did you make or play a great game built on .NET? We&#8217;d love to hear from you, and feature your contributions on future posts:<\/p>\n<ul>\n<li>Send an email to beleroy at Microsoft,<\/li>\n<li><a href=\"https:\/\/gist.github.com\/bleroy\/bb2852c686befec4f35a\">comment on this gist<\/a><\/li>\n<li>Leave us a pointer in the comments section below.<\/li>\n<li><a href=\"https:\/\/twitter.com\/yecats131\">Send Stacey (@yecats131) tips on Twitter about .NET games<\/a>.<\/li>\n<\/ul>\n<p>This week&#8217;s post (and future posts) also contains news I first read on\n<a href=\"http:\/\/www.asp.net\/\">ASP.NET&#8217;s community spotlight<\/a>, on <a href=\"https:\/\/sergeytihon.wordpress.com\/category\/f-weekly\/\">F# weekly<\/a>, on <a href=\"http:\/\/www.aspnetweekly.com\/\">ASP.NET Weekly<\/a>, on <a href=\"http:\/\/www.dirkstrauss.com\/the-daily-six-pack\/\">Dirk Strauss&#8217; The Daily Six Pack<\/a>, and on <a href=\"http:\/\/themorningbrew.net\/\">Chris Alcock&#8217;s The Morning Brew<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This issue of the Week in .NET is slightly late, and I apologize for that. I was visiting some customers in California for the first half of the week, and they&#8217;ve kept me very busy. I&#8217;m writing this post on the plane to Seattle. While I was in LA, I also visited the LADOTNET user [&hellip;]<\/p>\n","protected":false},"author":347,"featured_media":58792,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[685],"tags":[4,51,153],"class_list":["post-5174","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dotnet","tag-net","tag-community","tag-week-in-net"],"acf":[],"blog_post_summary":"<p>This issue of the Week in .NET is slightly late, and I apologize for that. I was visiting some customers in California for the first half of the week, and they&#8217;ve kept me very busy. I&#8217;m writing this post on the plane to Seattle. While I was in LA, I also visited the LADOTNET user [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts\/5174","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/users\/347"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/comments?post=5174"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts\/5174\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/media\/58792"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/media?parent=5174"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/categories?post=5174"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/tags?post=5174"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}