Category: Development

Development

Updates to the New Project Dialog in Visual Studio 2017

With the release of Visual Studio 2017 Update 6 (version 15.6.x), you might have noticed that there was an update done to the New Project dialog to move the .NET Framework version selector down to the bottom below the solution name. This makes the New Project dialog cleaner and shows you which version of the .NET Framework will be used when creating your project.

image

The Framework selector disappears when selecting non .NET Framework projects like ASP.NET Core, UWP, etc.

Enjoy!

Development

Getting Started with Application Insights for ASP.NET Core

In my previous posts I gave a quick Introduction to Application Insights and then I showed you how to Disable Application Insights from your app. In this post I’ll walk you through creating an ASP.NET Core application and then configuring it with Application Insights. Let’s get started.

Configuring your app for Application Insights

Start by creating a new ASP.NET Core application (this also applied to non-core ASP.NET applications). Once the application is created right click on the project file in the context menu look for Configure Application Insights… and then click on it.

image

You will see that the SDK has already been added to your application. Next click on the Start Free button to start using Application Insights.

image

You will need to have an existing Azure Subscription. If you don’t already have one you can create one for free and start with a $250 credit for 30 days + you will have access to popular services for 12 months + there are over 25 services that are always free. Now that you have your Azure Subscription, login with your Microsoft Account, select your Subscription and then a Resource. These can always be easily changed later on if need be.

You will now have access to the free plan which comes with 1 GB / Month of data included and data retention is 90 days. Click on he Register button to finish the configuration:

image

Now that Application Insights is configured for your application you have access to a wealth of information with the click of a button.

sshot-372

Accessing the Application Insights Telemetry from Visual Studio

You can search your Application Insights results from either the Azure Portal or from within Visual Studio. To use Visual Studio go to the View menu, select Other Windows and then Application Insight Search. You will then get view of the telemetry for the last 24 hours as shown below from a sample API I have. From here you can filter the telemetry and dive down into specific events.

image

Another nice feature is that Application Insights telemetry data including any exceptions that have been captured will show up in the CodeLens information as shown here:

image

There is a lot of value from using Application Insights in any of your applications. I hope you take a look and try it out for yourself.

Enjoy!

References

https://azure.microsoft.com/en-us/services/application-insights/

https://docs.microsoft.com/en-us/azure/application-insights/app-insights-asp-net-core

Development

How to Disable Azure Application Insights in ASP.NET Core

In my previous post I showed you how easy it was to get started with an Introduction to Application Insights for your ASP.NET Core application. However what if you you don’t want Application Insights? You might notice in your Output pane when running your app that it’s still partially enabled for you out of the box. I’ll walk you through what I mean by it being partially enabled and then how you can go about hiding it until such time you decide to fully turn it on. Let’s get started.

Start off by creating a new ASP.NET Core application (see below) and then immediately run it.

image

You will then notice that you will see the following statements in your Output pane:

Application Insights Telemetry (unconfigured): {“name”:”Microsoft.ApplicationInsights.Dev.Message”,”time”:”2018-03-24T03:39:26.5327026Z”,”tags”:{“ai.application.ver”:”1.0.0.0″,”ai.operation.parentId”:”|80d77757-4707b4b80d71a9b3.”,”ai.internal.sdkVersion”:”aspnet5c:2.1.1″,”ai.operation.id”:”80d77757-4707b4b80d71a9b3″,”ai.internal.nodeName”:”LT2206″,”ai.location.ip”:”127.0.0.1″,”ai.cloud.roleInstance”:”LT2206″,”ai.operation.name”:”GET Values/Get”,”ai.user.id”:”6RWa2″},”data”:{“baseType”:”MessageData”,”baseData”:{“ver”:2,”message”:”Executed action WebApplication5.Controllers.ValuesController.Get (WebApplication5) in 205.1085ms”,”severityLevel”:”Information”,”properties”:{“DeveloperMode”:”true”,”{OriginalFormat}”:”Executed action {ActionName} in {ElapsedMilliseconds}ms”,”ActionName”:”WebApplication5.Controllers.ValuesController.Get (WebApplication5)”,”AspNetCoreEnvironment”:”Development”,”ElapsedMilliseconds”:”205.1085″,”CategoryName”:”Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker”}}}}

image

You might be wondering why is it doing this and how can I disable it?

The easiest way to disable Application Insights without going through the process of ripping it out is to just disable it. You can do this by accessing TelemetryConfiguration.Active.DisableTelemetry and setting this to true. What I would recommend doing is to add a static method to your Startup.cs file and call this method from your Configure method like so:

image

Now when you run your application and look in the Output pane you will no longer see any statement pertaining to Application Insights.

image

I see a great deal of value of keeping Application Insights and using it in all your applications, so if you need to disable it then maybe do this when running in debug mode by using a conditional attribute on the method.

Enjoy!

References

https://github.com/aspnet/Home/issues/2051

Development

Microsoft Adaptive Cards 1.0 is now Available

image

During the Windows Developer Day 2018 keynote, Kevin Gallo talked about Adaptive Cards and how they can be used to provide a flexible way to present your content and your data.

Adaptive Cards gives you the tools to create scale across any engagement surface.

image

Adaptive Cards was first announced at the Microsoft Build 2017 conference and has now come out of preview and is generally available as a 1.0 product. When Windows 10 Spring Creators Update is released, you will be able to use Adaptive Cards on the Windows Timeline along with other experiences like a bot, Skype, Notifications, Teams and so much more.

Enjoy!

References

Windows Developer Day 2018 Keynote

http://adaptivecards.io/

https://github.com/Microsoft/AdaptiveCards/releases/tag/v1.0

Development

Visual Studio 2017 (15.6) has new Update Experience

After updating to Visual Studio 2017 (15.6) earlier today I noticed a minor update is out (15.6.1) and you will notice a new update experience as shown here. The updated dialog shows the current version, the update version and a link for the release notes:

image

image

This update (15.6.1) only takes a couple minutes to apply.

Enjoy!

DevelopmentMobile

Troubleshooting the installation of Xamarin Android Device Manager

UPDATED: Feb 26 2018 (later that day)

This post is a follow up to how I got Xamarin Android Device Manager up and running on Windows. Please read the Xamarin Developer guide first which explains how to install and use the Xamarin Android Device Manager for Visual Studio on Windows (or for Mac). Please keep in mind that at the time of this post the Xamarin Android Device Manager is still in preview.

For me I’m running the latest version of Visual Studio 2017 (15.5.7) and I already had the Xamarin components installed and working. Up until now I wasn’t really using the Android emulators for any Xamarin development as I was more focused on iOS and Windows. However now I have a need to and so I decided to try out the new Xamarin Android Device manager. Why you might ask? Well as of Android SDK Tools version 26.0.1, Google has removed support for their UI-based AVD and SDK managers in favor of their new CLI (Command Line Interface) tools.

After having installed the latest version of the Xamarin Device Manager installer for Windows, I ran it from the Start menu with Administrator privileges like so:

sshot-360

And this is the error I get:

sshot-360-1

I ran through the troubleshooting section section and the issue is that I was missing the Android SDK (requires 26 or higher). Perhaps a one of the latest Visual Studio updates caused this issue because now none of the Android tooling like device or emulator are working. Perhaps installing the Xamarin Device Manager broke it, I’m not sure but it’s broken. The only way I was able to resolve this was to run the Visual Studio Installer and uninstalled the the Xamarin SDK Manager and re-install it. Here is what I did.

My Solution to Fixing Missing Android SDK

1. Run Visual Studio Installer and then click on the Modify button:

image

2. Now go to the Individual components tab and Remove Xamarin SDK Manager and then click on the Modify button to apply the changes. Take notice of the amount of disk space that will be freed up. For me it was 113 MB.

image

3. Now do steps 1 and 2 again but this time add back the Xamarin SDK Manager and then notice the amount of disk space required for these changes…for me it was 1.4 GB, obviously something screwed up and I was missing a great deal. Now apply the changes by clicking on the Modify button.

Now when you run the Xamarin Android Device Manager from the start menu (with administrator rights) it should load up as expected. Now if you are like me and don’t have the latest Android SDK Tools, then you are then presented with the following dialog prompting you to download them from the Xamarin Android SDKs and Tools manager:

sshot-361

When the Xamarin Android SDK and Tools manager opens, review the SDK platforms you want installed and then click over to the Tools tab:

sshot-362

In the Tools tab, expand the Android SDK Tools selection and change the selected tooling to the current version which is 26.1.1 and then click on the Apply Changes button. If you’re just changing the Android SDK Tools, this should only take a couple min at most to apply. Once it’s done close down the Android SDKs and Tools manager.

sshot-363

Now go back to Visual Studio (re-run if you have it running already) and run the Android Emulator Manager from the Tools – > Android menu.

image

You will now be presented with the new Android Devices manager. When you first launch the Android Device Manager, it presents a screen that displays all currently configured virtual devices. For each device, the Name, Operating System (Android API Level), CPU, Memory size, and screen resolution are displayed:

image

I then went on and added a new option for Android Oreo and when I tried to run it I got another error:

image

Now it looks like I need to install another tool, Intel’s HAXM which requires Hyper-V be disabled.

Summary

What seemed like a quick and easy update has turned into quite the adventure. It’s 2018…why can’t this be more simple!

Enjoy!

References

Channel 9 | The Xamarin Show: Snack Pack | The New Xamarin Android Device Manager

How to setup and create Android virtual devices using Xamarin Android Device Manager

Installing Xamarin.Android on Windows

Installation Instructions for Intel® Hardware Accelerated Execution Manager (Intel® HAXM) – Microsoft Windows*

DevelopmentEvents

Windows Developer Day–March 7, 2018

WindowsDeveloperDay-Mar72018

On March 7, 2018 at 9:00 AM PST, Microsoft will livestream a Windows Developer Day event on the latest news on tools and features for developers that will be coming in the next Windows 10 Update. The livestream will cover a keynote by Kevin Gallo, CVP of the Windows Developers Platform and then be followed by a Q&A session.

No matter what you’re working on, you’ll find plenty of improvements that will make your software even more compelling. You’ll also get inside info on:

  • Building for the modern workplace—Learn how Windows is evolving as a platform to make improving and updating your existing Windows code with new functionality as simple as possible.
  • Making your software part of the intelligent edge—Give your applications the capability to quickly make complex calculations and inferences, enabling them to become a native part of the intelligent edge.

Windows Developer Day is the only place to find out what’s coming for developers in the next Windows 10 Update, so RSVP today.

Enjoy!

Resources

Windows Developer Day