{"id":10875,"date":"2017-06-14T01:31:43","date_gmt":"2017-06-14T15:31:43","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/dotnet\/?p=10875"},"modified":"2021-09-30T10:09:39","modified_gmt":"2021-09-30T17:09:39","slug":"the-week-in-net-on-net-with-mattias-karlsson-on-cake-topshelf","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/dotnet\/the-week-in-net-on-net-with-mattias-karlsson-on-cake-topshelf\/","title":{"rendered":"The week in .NET &#8211; On .NET with Mattias Karlsson on Cake, Topshelf"},"content":{"rendered":"<p>Previous posts:<\/p>\n<ul>\n<li><a href=\"https:\/\/blogs.msdn.microsoft.com\/dotnet\/2017\/06\/06\/the-week-in-net-on-net-with-brett-morrison-datetime-extensions\/\">On .NET with Brett Morrison, DateTime Extensions<\/a><\/li>\n<li><a href=\"https:\/\/blogs.msdn.microsoft.com\/dotnet\/2017\/05\/30\/the-week-in-net-open-xml-sdk-adventure-time\/\">Open XML SDK, Adventure Time<\/a><\/li>\n<li><a href=\"https:\/\/blogs.msdn.microsoft.com\/dotnet\/2017\/05\/23\/the-week-in-net-net-poster-happy-birthday-net-with-jan-kotas-skyworld\/\">.NET poster, Happy Birthday .NET with Jan Kotas, Skyworld<\/a><\/li>\n<\/ul>\n<h2>On .NET: Mattias Karlsson &#8211; Cake<\/h2>\n<p>During the Microsoft Build conference, we recorded <a href=\"https:\/\/channel9.msdn.com\/Shows\/On-NET\/Mattias-Karlsson-Cake\">interviews with some of the attendees<\/a>. <a href=\"https:\/\/github.com\/devlead\">Mattias Karlsson<\/a> is a core contributor on <a href=\"http:\/\/cakebuild.net\/\">Cake<\/a>, the cross-platform build automation system with a C# DSL.<\/p>\n<p><center>\n<iframe src=\"https:\/\/channel9.msdn.com\/Shows\/On-NET\/Mattias-Karlsson-Cake\/player\" width=\"650\" height=\"360\" allowFullScreen frameBorder=\"0\"><\/iframe>\n<\/center><\/p>\n<ul>\n<li><a href=\"http:\/\/cakebuild.net\/\">Cake<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/devlead\">Mattias on GitHub<\/a><\/li>\n<\/ul>\n<h2>Package of the week: Topshelf<\/h2>\n<p><a href=\"http:\/\/topshelf-project.com\/\">Topshelf<\/a> is a framework for hosting services written using .NET. The creation of services is simplified by allowing developers to create an easy to debug console application that can also be installed as a service.<\/p>\n<pre><code>public class TownCrier\r\n{\r\n    readonly Timer _timer;\r\n    public TownCrier()\r\n    {\r\n        _timer = new Timer(1000) {AutoReset = true};\r\n        _timer.Elapsed += (sender, eventArgs) =&gt;\r\n            Console.WriteLine($&quot;It is {DateTime.Now} and all is well&quot;);\r\n    }\r\n    public void Start() { _timer.Start(); }\r\n    public void Stop() { _timer.Stop(); }\r\n}\r\n\r\npublic class Program\r\n{\r\n    public static void Main()\r\n    {\r\n        HostFactory.Run(x =&gt;\r\n        {\r\n            x.Service&lt;TownCrier&gt;(s =&gt;\r\n            {\r\n               s.ConstructUsing(name=&gt; new TownCrier());\r\n               s.WhenStarted(tc =&gt; tc.Start());\r\n               s.WhenStopped(tc =&gt; tc.Stop());\r\n            });\r\n            x.RunAsLocalSystem();\r\n\r\n            x.SetDescription(&quot;Sample Topshelf Host&quot;);\r\n            x.SetDisplayName(&quot;TownCrier&quot;);\r\n            x.SetServiceName(&quot;TownCrier&quot;);\r\n        });\r\n    }\r\n}\r\n<\/code><\/pre>\n<ul>\n<li><a href=\"http:\/\/topshelf-project.com\/\">Topshelf web site<\/a><\/li>\n<li><a href=\"https:\/\/www.nuget.org\/packages\/Topshelf\/\">Topshelf on NuGet<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/Topshelf\/Topshelf\">Topshelf source code<\/a><\/li>\n<li><a href=\"https:\/\/topshelf.readthedocs.io\/en\/latest\/index.html\">Topshelf documentation<\/a><\/li>\n<\/ul>\n<h2>Meetup of the week: The Dockering of .NET with Cecil Phillip in Miami, FL<\/h2>\n<p>The June meeting of <a href=\"https:\/\/www.meetup.com\/dotNetMiami\/\">dotNet Miami<\/a> will have .NET expert and Away From The Keyboard host Cecil Phillip talking about marrying Docker and .NET. Cecil will review the basics of Docker and how we can add containers to our applications.<\/p>\n<p><a href=\"https:\/\/www.meetup.com\/dotNetMiami\/events\/240608029\/\">Thursday, June 15, 2017 6:30 PM in Miami, FL<\/a><\/p>\n<h2>.NET<\/h2>\n<ul>\n<li><a href=\"https:\/\/blogs.msdn.microsoft.com\/dotnet\/2017\/06\/07\/performance-improvements-in-net-core\/\">Performance Improvements in .NET Core<\/a> by Stephen Toub.<\/li>\n<li><a href=\"http:\/\/aakinshin.net\/blog\/post\/stephen-toub-benchmarks-part1\/\">Measuring Performance Improvements in .NET Core with BenchmarkDotNet (Part 1)<\/a> by Andrey Akinshin.<\/li>\n<li><a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/10735\/\">.NET Core 2 and Visual Studio 2017 Preview 2<\/a> by Lee Coward.<\/li>\n<li><a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/net-fringe\/\">.NET Fringe: A Great Role Model for Community Oriented Conferences<\/a> by Immo Landwerth.<\/li>\n<li><a href=\"https:\/\/www.hanselman.com\/blog\/NETAndDocker.aspx\">.NET and Docker<\/a> by Scott Hanselman.<\/li>\n<li><a href=\"https:\/\/www.hanselman.com\/blog\/CommentView.aspx?guid=67479F6E-F601-42C3-9E97-02036D170CFD#4dfeb315-5d0f-4917-b2b0-7124e930f387\">Trying .NET Core on Linux with just a tarball (without apt-get)<\/a> by Scott Hanselman.<\/li>\n<li><a href=\"https:\/\/www.meziantou.net\/2017\/06\/12\/continuously-publishing-nuget-package-to-myget-using-vsts\">Continuously publishing Nuget package to MyGet using VSTS<\/a> by G\u00e9rald Barr\u00e9.<\/li>\n<li><a href=\"https:\/\/www.codeproject.com\/Articles\/1190475\/Porting-a-NET-Framework-library-to-NET-Core\">Porting a .NET Framework library to .NET Core<\/a> by Harsh Gupta 9.<\/li>\n<li><a href=\"https:\/\/www.devtrends.co.uk\/blog\/creating-your-first-shared-library-in-.net-core\">Creating your first shared library in .NET Core<\/a> by Paul Hiles.<\/li>\n<li><a href=\"https:\/\/jeremylindsayni.wordpress.com\/2017\/06\/10\/contributing-to-the-net-core-sdk-source-code-for-the-first-time\/\">Contributing to the .NET Core SDK source code for the first time, and how OSS helped me<\/a> by Jeremy Lindsay.<\/li>\n<li><a href=\"http:\/\/photosauce.net\/blog\/post\/5-reasons-you-should-stop-using-systemdrawing-from-aspnet\">5 Reasons You Should Stop Using System.Drawing from ASP.NET<\/a> by Clinton Ingram.<\/li>\n<li><a href=\"http:\/\/thedatafarm.com\/data-access\/first-foray-into-net-core-2-0\/\">First Foray into .NET Core 2.0<\/a> by Julie Lerman.<\/li>\n<li><a href=\"http:\/\/geeklearning.io\/testavior-a-happy-solution-to-test-your-asp-net-core-applications\/\">Testavior: A Happy Solution To Test Your ASP.NET Core Applications<\/a> by Arnaud.<\/li>\n<li><a href=\"https:\/\/devblogs.microsoft.com\/powershell\/2017\/06\/09\/getting-started-with-powershell-core-on-windows-mac-and-linux\/\">Getting Started with PowerShell Core on Windows, Mac, and Linux<\/a> by Ashley McGlone.<\/li>\n<li><a href=\"https:\/\/blog.couchbase.com\/logging-log4net-common-logging\/\">Logging with Log4Net and Common Logging<\/a> by Matthew Groves.<\/li>\n<li><a href=\"https:\/\/blog.scooletz.com\/2017\/06\/08\/implementing-a-scheduler-for-your-orchestrations\/\">Implementing a scheduler for your orchestrations<\/a> by Szymon Kulec &#8216;Scooletz&#8217;.<\/li>\n<\/ul>\n<h2>ASP.NET<\/h2>\n<ul>\n<li><a href=\"https:\/\/andrewlock.net\/defining-custom-logging-messages-with-loggermessage-define-in-asp-net-core\/\">Defining custom logging messages with LoggerMessage.Define in ASP.NET Core<\/a> by Andrew Lock.<\/li>\n<li><a href=\"https:\/\/blogs.msdn.microsoft.com\/premier_developer\/2017\/06\/05\/defining-asp-net-core-controller-action-constraint-to-match-the-correct-action\/\">Defining ASP.NET Core Controller action constraint to match the correct action<\/a> by Pam Lahoud.<\/li>\n<li><a href=\"http:\/\/cecilphillip.com\/excluding-node_modules-folder-from-publishing\/\">Excluding the node_modules folder when publishing ASP.NET projects.<\/a> by Cecil Phillip.<\/li>\n<li><a href=\"http:\/\/iamnotmyself.com\/2017\/05\/07\/simplest-possible-asp-net-core-web-application-in-docker-for-windows\/\">Simplest Possible ASP.NET Core Web Application in Docker for Windows<\/a> by Bobby Johnson.<\/li>\n<li><a href=\"http:\/\/www.hishambinateya.com\/theming-in-asp.net-core\">Theming in ASP.NET Core<\/a> by Hisham Bin Ateya.<\/li>\n<li><a href=\"https:\/\/jonhilton.net\/2017\/06\/07\/keep-your-asp-dot-net-application-secrets-safe\/\">Keep your ASP.NET Core application\u2019s secrets safe during development<\/a> by Jon Hilton.<\/li>\n<li><a href=\"https:\/\/codeopinion.com\/self-descriptive-http-api-in-asp-net-core-hypermedia-clients\/\">Self Descriptive HTTP API in ASP.NET Core: Hypermedia Clients<\/a> by Derek Comartin.<\/li>\n<li><a href=\"https:\/\/damienbod.com\/2017\/06\/11\/openid-connect-session-management-an-angular-application-using-identityserver4\/\">OpenID Connect Session Management using an Angular application and IdentityServer4<\/a> by Damien Bowden.<\/li>\n<li><a href=\"https:\/\/www.exceptionnotfound.net\/building-the-ultimate-restsharp-client-in-asp-net-and-csharp\/\">Building the Ultimate RestSharp Client in ASP.NET and C#<\/a> by Matthew Jones.<\/li>\n<li><a href=\"https:\/\/www.simple-talk.com\/dotnet\/asp-net\/control-controller-asp-net-mvc\/\">ASP.NET Core POCO Controllers<\/a> by Dino Esposito.<\/li>\n<li><a href=\"https:\/\/www.tpeczek.com\/2017\/06\/feeding-server-timing-api-from-aspnet.html\">Feeding Server Timing API from ASP.NET Core<\/a> by Tomasz P\u0119czek.<\/li>\n<\/ul>\n<h2>C#<\/h2>\n<ul>\n<li><a href=\"https:\/\/channel9.msdn.com\/Shows\/Code-Conversations\/C-7-Features-with-Mads-Torgersen\">C# 7 Features with Mads Torgersen<\/a> by Mads Torgersen, Maria Naggaga, and Jon Galloway.<\/li>\n<li><a href=\"https:\/\/www.infoq.com\/news\/2017\/06\/CSharp-7.1-a?utm_campaign=infoq_content&amp;utm_source=infoq&amp;utm_medium=feed&amp;utm_term=global\">An Early Look at C# 7.1: Part 1<\/a> by InfoQ.<\/li>\n<li><a href=\"https:\/\/www.infoq.com\/news\/2017\/06\/CSharp-7.2\">C# 7.2 and 8.0 Roadmap<\/a> by InfoQ.<\/li>\n<li><a href=\"https:\/\/blogs.msdn.microsoft.com\/mazhou\/2017\/06\/06\/c-7-series-part-3-default-literals\/\">C# 7 Series, Part 3: Default Literals<\/a> by Mark Zhou.<\/li>\n<li><a href=\"http:\/\/metacoding.azurewebsites.net\/2017\/06\/08\/disambiguous-methods-trick-based-on-generic-constraint\/\">Disambiguate method trick based on generic constraint<\/a> by Matthieu Mezil.<\/li>\n<li><a href=\"https:\/\/www.alvinashcraft.com\/2017\/06\/07\/top-20-recommended-microsoft-build-2017-sessions-for-c-developers\/\">Top 20 Recommended Microsoft Build 2017 Sessions for C# Developers<\/a> by Alvin Ashcraft.<\/li>\n<li><a href=\"https:\/\/surfingthecode.com\/2017\/06\/null-checking-allocations-and-mass-refactoring-with-resharper\/\">Null checking allocations and mass refactoring with Resharper<\/a> by Alexander Tsvetkov.<\/li>\n<li><a href=\"http:\/\/www.andreaangella.com\/2017\/06\/practical-csharp-linq-set-operations\/\">Practical C# \u2013 LINQ Set Operations<\/a> by Andrea Angella.<\/li>\n<\/ul>\n<h2>F#<\/h2>\n<ul>\n<li><a href=\"https:\/\/completely-unique-view-blog.appspot.com\/posts\/kami2-solver-part-1\">Kami 2 Solver in F# &#8211; Part 1<\/a> by Chris Smith.<\/li>\n<li><a href=\"https:\/\/medium.com\/@zaid.naom\/minimalistic-live-testing-fable-apps-with-qunit-b9d9f2f64725\">Minimalistic Live Testing Fable Apps With QUnit<\/a> by Zaid Ajaj.<\/li>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=bKpRrCssAWM\">Parallel Programming with F# and Hopac<\/a> by Natallia Dzenisenka.<\/li>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=X76iVWa-0e0\">Productive Web Applications (F#)<\/a> by Jeremy Abbot.<\/li>\n<\/ul>\n<p>There is more content available this week in <a href=\"https:\/\/sergeytihon.wordpress.com\/category\/f-weekly\/\">F# Weekly<\/a>. If you want to see more F# awesomeness, please check it out!<\/p>\n<h2>VB<\/h2>\n<ul>\n<li><a href=\"http:\/\/gunnarpeipman.com\/2017\/06\/aspnet-core2-vbnet-weather-api\/\">Building web API apps on ASP.NET Core 2 and VB.NET<\/a> by Gunnar Peipman.<\/li>\n<\/ul>\n<h2>Xamarin<\/h2>\n<ul>\n<li><a href=\"http:\/\/www.davidbritch.com\/2017\/06\/enterprise-application-patterns-using.html\">Enterprise Application Patterns using Xamarin.Forms<\/a> by David Britch.<\/li>\n<li><a href=\"https:\/\/blog.xamarin.com\/enterprise-apps-made-easy-updated-libraries-apis\/\">Enterprise Apps Made Easy with New Authentication &amp; Microsoft Graph Libraries<\/a> by Mayur Tendulka.<\/li>\n<li><a href=\"https:\/\/blog.xamarin.com\/unleashed-embedding-xamarin-forms-in-xamarin-native\/\">Unleashed: Embedding Xamarin.Forms in Xamarin Native<\/a> by David Ortinau.<\/li>\n<li><a href=\"https:\/\/blog.xamarin.com\/wwdc-2017-recap-for-ios-developers\/\">WWDC 2017 Recap for iOS Developers<\/a> by Pierce Boggan.<\/li>\n<li><a href=\"https:\/\/blog.xamarin.com\/xamarin-developer-events-june\/\">Xamarin Developer Events This June<\/a> by Jayme Singleton.<\/li>\n<li><a href=\"https:\/\/channel9.msdn.com\/Shows\/XamarinShow\/\">Episode 24: Xamarin Live Player<\/a> by The Xamarin Show.<\/li>\n<li><a href=\"https:\/\/darkgenesis.zenithmoon.com\/getting-started-with-monogame-using-xml\/\">Getting started with MonoGame using XML<\/a> by Simon Jackson.<\/li>\n<li><a href=\"https:\/\/mindofai.github.io\/Creating-Custom-Controls-with-Bindable-Properties-in-Xamarin.Forms\/\">Creating Custom Controls with Bindable Properties in Xamarin.Forms<\/a> by Bryan Anthony Garcia.<\/li>\n<li><a href=\"https:\/\/msicc.net\/xamarin-forms-the-mvvmlight-toolkit-and-i-dependecy-injection\/\">Xamarin Forms, the MVVMLight Toolkit and I: Dependecy Injection<\/a> by Marco Siccardi.<\/li>\n<li><a href=\"https:\/\/releases.xamarin.com\/alpha-release-xamarin-workbooks-inspector-1-3-0-alpha2\/\">Alpha Release: Xamarin Workbooks &amp; Inspector 1.3.0-alpha2<\/a> by Bri Brothers.<\/li>\n<li><a href=\"https:\/\/releases.xamarin.com\/common-issues-in-the-xamarin-15-2-2-release-being-tracked-by-the-xamarin-team\/\">Common issues in the Xamarin 15.2.2 release being tracked by the Xamarin team<\/a> by Brendan Zagaeski.<\/li>\n<li><a href=\"https:\/\/www.chipsncookies.com\/2017\/optimize-memory-usage-in-xamarin-apps\/\">Optimize memory usage in Xamarin apps<\/a> by Samuel Debruyn.<\/li>\n<li><a href=\"https:\/\/www.hockeyapp.net\/blog\/2017\/06\/06\/mobile-center-fastlane.html\">Mobile Center plugin for fastlane<\/a> by Mobile Center Team.<\/li>\n<li><a href=\"https:\/\/www.infragistics.com\/community\/blogs\/infragistics\/archive\/2017\/06\/08\/zero-to-build-creating-new-apps-in-minutes-with-appmap.aspx\">Zero to Build: Create new Xamarin apps in minutes with AppMap<\/a> by Infragistics.<\/li>\n<li><a href=\"https:\/\/www.junian.net\/2017\/06\/start-android-emulator-with-docker-on-macos.html\">Can&#8217;t Start Android Emulator on macOS? It&#8217;s Probably Conflicting with Docker<\/a> by Junian Triajianto.<\/li>\n<li><a href=\"https:\/\/www.thewissen.io\/xamarin-devops-ios-ci\/\">Xamarin and DevOps: Setting up your iOS CI<\/a> by Steven Thewissen.<\/li>\n<li><a href=\"https:\/\/www.thewissen.io\/xamarin-devops-versioning\/\">Xamarin and DevOps: Versioning your app<\/a> by Steven Thewissen.<\/li>\n<li><a href=\"http:\/\/err2solution.com\/2017\/05\/getting-started-with-xamarin-forms-for-mac-preview\/\">Getting Started with Xamarin Forms for Mac Preview<\/a> by S Ravi Kumar.<\/li>\n<li><a href=\"http:\/\/err2solution.com\/2017\/06\/realm-mobile-database-with-xamarin-forms-step-by-step-guide\/\">Realm Mobile Database with Xamarin Forms Step By Step Guide<\/a> by S Ravi Kumar.<\/li>\n<li><a href=\"http:\/\/lastexitcode.com\/blog\/2017\/06\/04\/NuGetSupportInVisualStudioMac7-0\/\">NuGet Support in Visual Studio for Mac 7.0<\/a> by Matt Ward.<\/li>\n<li><a href=\"http:\/\/thatcsharpguy.com\/post\/custom-renderer-paint-code-en\/\">Xamarin.Forms &amp; PaintCode<\/a> by Antonio Feregrino Bola\u00f1os.<\/li>\n<\/ul>\n<h2>Azure<\/h2>\n<ul>\n<li><a href=\"http:\/\/www.andreaangella.com\/2017\/06\/azure-via-csharp-delete-azure-blobs\/\">Azure via C# \u2013 Delete Azure Blobs<\/a> by Andrea Angella.<\/li>\n<li><a href=\"http:\/\/www.andreaangella.com\/2017\/06\/azure-via-csharp-download-azure-blobs\/\">Azure via C# \u2013 Download Azure Blobs<\/a> by Andrea Angella.<\/li>\n<li><a href=\"http:\/\/www.medic-consulting.com\/2017\/06\/07\/Upgrade-your-Net-Core-Service-Fabric-Microservices-from-VS-2015-to-VS-2017\/\">Upgrade your .Net Core Service Fabric Microservices from VS 2015 to VS 2017<\/a> by Andrej Medic.<\/li>\n<li><a href=\"http:\/\/dontcodetired.com\/blog\/post\/Architecting-Azure-Functions-Function-Timeouts-and-Work-Fan-Out-with-Queues\">Architecting Azure Functions: Function Timeouts and Work Fan-Out with Queues<\/a> by Jason Roberts.<\/li>\n<li><a href=\"https:\/\/blogs.msdn.microsoft.com\/benjaminperkins\/2017\/06\/06\/remote-debug-your-azure-app-service-2017-including-asp-net-core\/\">Remote debug your Azure App Service 2017 including ASP.NET Core<\/a> by Benjamin Perkins.<\/li>\n<\/ul>\n<h2>UWP<\/h2>\n<ul>\n<li><a href=\"https:\/\/blogs.windows.com\/buildingapps\/2017\/06\/05\/native-ads-microsoft-advertising-sdk\/\">Native Ads in Microsoft Advertising SDK<\/a> by Vivek Mohan.<\/li>\n<li><a href=\"https:\/\/blogs.windows.com\/buildingapps\/2017\/06\/06\/using-color-fonts-beautiful-text-icons\/\">Using color fonts for beautiful text and icons<\/a> by Rick Manning.<\/li>\n<\/ul>\n<h2>Data<\/h2>\n<ul>\n<li><a href=\"https:\/\/visualstudiomagazine.com\/articles\/2017\/06\/01\/reduce-overhead.aspx\">Reduce Overhead When Retrieving Objects with Entity Framework<\/a> by Peter Vogel.<\/li>\n<li><a href=\"https:\/\/www.hanselman.com\/blog\/LLBLGenProForNETAndNETCoreDatabaseEntityModelingWithAnyORM.aspx\">LLBLGen Pro for .NET and .NET Core &#8211; Database Entity Modeling with any ORM<\/a> by Scott Hanselman.<\/li>\n<\/ul>\n<h2>Game development<\/h2>\n<ul>\n<li><a href=\"https:\/\/www.raywenderlich.com\/159610\/advanced-vr-mechanics-unity-htc-vive-part-2\">Advanced VR Mechanics With Unity and the HTC Vive \u2013 Part 2<\/a> by Eric Van de Kerckhove.<\/li>\n<li><a href=\"http:\/\/www.gamasutra.com\/blogs\/SimonJackson\/20170602\/299228\/Getting_started_with_MonoGame_using_XML.php\">Getting started with MonoGame using XML<\/a> by Simon Jackson.<\/li>\n<li><a href=\"http:\/\/www.gamasutra.com\/view\/news\/299588\/Video_Sid_Meier_and_Bruce_Shelleys_postmortem_of_Civilization.php\">Sid Meier and Bruce Shelley&#8217;s postmortem of Civilization<\/a> by Sid Meier and Bruce Shelley.<\/li>\n<li><a href=\"https:\/\/channel9.msdn.com\/Shows\/dotGAME\/Getting-started-with-Mixer-Interactivity\">Getting started with Mixer Interactivity in Unity<\/a> by Stacey Haffner.<\/li>\n<\/ul>\n<p>And this is it for this week!<\/p>\n<h2>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. The F# section is provided by <a href=\"https:\/\/twitter.com\/_cartermp\">Phillip Carter<\/a>, the gaming section by <a href=\"https:\/\/twitter.com\/yecats131\">Stacey Haffner<\/a>, the Xamarin section by <a href=\"https:\/\/twitter.com\/DanRigby\">Dan Rigby<\/a>, and the Azure and UWP section by <a href=\"http:\/\/twitter.com\/mbcrump\">Michael Crump<\/a>.<\/p>\n<p>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. Please <a href=\"https:\/\/weekindotnet.azurewebsites.net\">add your posts<\/a>, it takes only a second.<\/p>\n<p>We pick the articles based on the following criteria: the posts must be about .NET, they must have been published this week, and they must be original contents. Publication in Week in .NET is not an endorsement from Microsoft or the authors of this post.<\/p>\n<p>This week&#8217;s post (and future posts) also contains news I first read on <a href=\"https:\/\/blogs.msdn.microsoft.com\/webdev\/tag\/communitystandup\/\">The ASP.NET Community Standup<\/a>, on <a href=\"http:\/\/weeklyxamarin.com\/\">Weekly Xamarin<\/a>, on <a href=\"https:\/\/sergeytihon.wordpress.com\/category\/f-weekly\/\">F# weekly<\/a>, and on <a href=\"http:\/\/themorningbrew.net\/\">The Morning Brew<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Previous posts: On .NET with Brett Morrison, DateTime Extensions Open XML SDK, Adventure Time .NET poster, Happy Birthday .NET with Jan Kotas, Skyworld On .NET: Mattias Karlsson &#8211; Cake During the Microsoft Build conference, we recorded interviews with some of the attendees. Mattias Karlsson is a core contributor on Cake, the cross-platform build automation system [&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-10875","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>Previous posts: On .NET with Brett Morrison, DateTime Extensions Open XML SDK, Adventure Time .NET poster, Happy Birthday .NET with Jan Kotas, Skyworld On .NET: Mattias Karlsson &#8211; Cake During the Microsoft Build conference, we recorded interviews with some of the attendees. Mattias Karlsson is a core contributor on Cake, the cross-platform build automation system [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts\/10875","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=10875"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts\/10875\/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=10875"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/categories?post=10875"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/tags?post=10875"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}