ASP.NET Community Standup – February 2, 2016

This is the next in a series of blog posts that will cover the topics discussed in the ASP.NET Community Standup.  The community standup is a short video-based discussion with some of the leaders of the ASP.NET development teams covering the accomplishments of the team on the new ASP.NET 5 framework over the previous week.  Within 30 minutes, Scott HanselmanDamian EdwardsJon Galloway and an occasional guest or two discuss new features and ask for feedback on important decisions being made by the ASP.NET development teams.

Each week the standup is hosted live on Google Hangouts and the team publishes the recorded video of their discussion to YouTube for later reference. The guys answer your questions LIVE and unfiltered.  This is your chance to ask about the why and what of ASP.NET!  Join them each Tuesday on live.asp.net where the meeting’s schedule is posted and hosted.

This week’s meeting is below:

The team started with an initial discussion of the MSDN WebDev blog post – “An Update on ASP.NET Core and .NET Core” The team previously assumed that folks would watch the standup video, and have resolved to publish a blog post and we will continue to publish show notes on the webdev blog so that the show information can be more search-engine friendly. The team is improving messaging about the projects, and we plan to significantly improve it in the weeks ahead.

Some developers feel hurt by the changes in the ASP.NET Core renaming and schedule. Some customers have been very successful with ASP.NET 5 and the transition to ASP.NET Core has not affected them at all. The project is still early, not released and fully supported yet. If you need to avoid any significant changes to your framework, this framework is not for you yet. ASP.NET 4.6 is rock solid and does not have any large API changes happening. The team is learning how to make this style of development work, and they are getting closer to a better development model.

 

Links of the Week:

Steve Desmond wrote Performance is Paramount  about adding some static caching and tuning to his web server significantly improved his performance.  Damian commented that Response Caching is not available yet, but will be coming as part of the framework.

K. Scott Allen shared Downloading and serving node resources in an ASP.NET Core application

Questions and Answers:

Question: “Be Part of the Conversation” overlay on YouTube is annoying
— This is how Google wants you to join the interactive conversation on Google Hangouts

Question: Did I miss the story of RC2?
— Watch last weeks video and read the blog post.  Re-platforming on .NET CLI is taking longer than expected, and to ensure that we will deliver a killer product we are backing off on the timeline and will issue dates when we are confident

Question: What’s the story about LightSwitch HTML?
— We are not involved with that team.  Ask Beth Massi for more details

Question: Any plans on allowing input pass-through of JSON.NET’s type-handling setting in MVC?
— Nothing specifically, MVC options available when configuring your app are exposed and you can plug that with the configuration you need.

Question: WebAPI as a product keeps being mentioned – but is not a product, its merged with MVC. Doesn’t this add to confusion?
— Naming is hard – ASP.NET Core has MVC features and WebAPI features (from the previous versions).  What is meant is that ASP.NET Core includes these things by default now.

Question: Will we see a configuration where we can point IIS to a directory and it just runs?
— We want this to be the finished product, but is still in progress.  The IIS platform handler needs to be configured to call the appropriate executable to host the application.  If the platform handler is installed, a properly loaded web.config with information for IIS in your project should enable this process.
Follow-up question: Will you have to use a ‘publish gesture’ to make this work?
—- You can configure a web.config with all of the options you need, and in theory deliver that file with your application to configure IIS properly

Question: When will ASP.NET Core ‘Hello World’ work with .NET Native?
— Not in scope for RTM.  The demo video on Channel 9 was a hack to show a proof-of-concept and is not being developed actively.

Question: Starting a personal project, a simple web app — should I start now with RC1 Update 1?
— Depends on your tolerance – the big rename update for your code will be addressed in a guide that will be shared when the RC2 ships.  If you like the experience in RC1, you should like the experience in RC2.  You will have some work to update to RC2 but we do not believe it will be difficult.

Question: I am porting a BIG enterprise app comprised of multiple ASP.NET apps in virtual directories.  Will we see support for support sharing or virtual directories in Kestrel?
— No support for port sharing in Kestrel, that’s an Http.Sys feature.  You can achieve both of these with IIS, and you should use those features in IIS.  We’re working to get IISExpress to work properly with the RC2, and will have more details about IIS Express and IIS when the RC2 is ready.  We want to be able to deliver a solution that supports hosting separate ASP.NET Core applications as virtual directories in the same IIS application.

Question: Any tools for ASP.NET Core that are recommended for tracking down memory leaks?
— The team is using dotPeek and dotMemory from JetBrains.  The Visual Studio tools work very well also, and the team uses all of them were each is better.  There are no great tools for Linux yet, but the team is using perf and the Mono tools to diagnose.

Question: Any update on the .tfignore issue?  AspNet/Tooling#18
— No update — we will follow-up

Question: I want to run ASP.NET Core as a desktop app and I need the context of the current user…
— This is how ASP.NET Core is currently recommended to be run – as a console application

Question: Should you use ConfigureAwait(false) in ASP.NET Core?
— No – this is primarily for use when a synchronization context is in use, and that’s not the case in ASP.NET Core.

Question: VS Crashes at least 5 times a day for me, why don’t you have these problems?
— This is typically a problem with extensions or environments.  We recommend that you try shutting off some extensions to see if that helps. Scott will follow-up with this caller.

Question: Is there any OData in the new WebAPI
— No — not yet

Question: Is VSCode broken on Linux, it doesn’t work for me?
— Reach out to @code to ask for help.  Lots of folks are finding success, the @Code team can help.

Question: What about code-contracts on ASP.NET Core?
— No idea.. Ask a question on the ASP.NET Home Repo

Question: Is the .NET Platform Standard being discussed anywhere?  The working docs are not being updated
— That’s right — its being implemented now

Question: How do you catch global exceptions, previously this could be checked in AppDomain.CurrentDomain?
— There is an issue on corefx discussing this right now

Question: The .NET CLI supports vbc, can I run an ASP.NET Core application on VB?
— Not yet.  The team needs to connect the end-to-end pieces to make that work.

Question: VS 2015 community and 2013 community running very slow when debugging with the HD thrashing
— We recommend using SSDs because they improve performance significantly.  Also, Scott recommends going into Windows Defender or any other anti-virus is thrashing your build process.  Scott excludes Devenv, MsBuild, compilers, and the folder that code is in.  If not on an SSD, Scott recommends creating a 2GB memory disk and moving your compile process there.  Also, try running the SysInternals process monitor and see what the disk is doing.  Scott found a backup application was causing his VS problems in the past.

Question: I want to use EF7, but I need to do spatial queries.
— Ask a question about spatial on EF Core GitHub repo.  Jon also points out that there is a way to run EF6 with ASP.NET Core

Question: How do we build ASP.NET Core applications from TFS services that are not exposed to the internet?
— Set up a local feed of NuGet packages inside your firewall and point your build agent at that

Question: People on Reddit and Blogs are obsessed with Native compilation into a single binary
— Neat, but not critical to ASP.NET success right now

Question: It feels like EF7 is not ready enough…
— We need more details about this in a focused discussion of those needs.  The team is focusing on the top 80% of features that applications need, and some features will not make the initial cut.

Question: I like the startup class features in ASP.NET Core like ConfigureServices, but when creating a Console app it doesn’t exist.  It would be nice to have consistency.
— The primitives that support ConfigureServices and DI are part of the web framework and are not in the console app.  You can add those features into a framework for a console application


The next ASP.NET Community Standup will be held live on Feb 16, 2016 from live.asp.net  Check in there to get the exact time in your timezone.  Join us, talk with the team and learn the latest about ASP.NET