No trial. No credit card required. Just your GitHub account.
.NET Blog
Free. Cross-platform. Open source. A developer platform for building all your apps.
Featured posts

.NET Aspire 9.3 is here and enhanced with GitHub Copilot!
.NET Aspire 9.3 is the biggest release of .NET Aspire yet, with the introduction of GitHub Copilot directly into the .NET Aspire Dashboard, updates for integrat...
Latest posts

Get more information from Social providers used in the VS 2013 project templates
When you create a New ASP.NET Project in VS 2013 and choose Individual Accounts, the template shows how you can login with Social providers such as Microsoft Account, Facebook, Google and Twitter. When you login with these Social Providers such as Facebook, you can request more information about the user such as the User’s picture, friends etc. and if the user allows your app to access this data then you can get this information and provide a rich experience in your site. In the following post I am going to show you how you can request more data (or scopes) when a user logs in via Facebook provider. This post as...

Customizing profile information in ASP.NET Identity in VS 2013 templates
ASP.NET Identity is the new membership system for ASP.NET applications. To learn more about ASP.NET Identity please visit http://blogs.msdn.com/b/webdev/archive/2013/06/27/introducing-asp-net-identity-membership-system-for-asp-net-applications.aspx One of the mainline features about ASP.NET Identity is to make it easy to add profile information about the user. In the existing ASP.NET Membership system, User and Profile were separate tables and Profile information about the user was retrieved by using the Profile provider. This made it difficult to customize the Profile information and associate it with the User ...

ASP.NET features in New Project Templates in Visual Studio 2013
The New Project Templates in VS 2013 show case the best practices when it comes to using ASP.NET. The project templates provide a good starting point which a developer can build upon or use them as a guide to see how the features are being used. As the ASP.NET framework gets richer with features, it is important for us to make these features more discoverable. This post lists out the ASP.NET features that you get when you create a project in VS 2013 and a brief introduction about them. I am hoping that this post would be a starting point to learn about the new features and then you can drill down into the detail...

Package Restore and Consent Changes
When NuGet 2.0 released, it included the requirement that in order to use package restore, you first needed to explicitly provide consent to the NuGet client to download packages over the Internet. This requirement added some friction to normal developer workflows, and it added more friction in build and continuous integration sever scenarios. Needless to say, the feedback was not positive, and since releasing 2.0, we’ve been working with various groups to remove this friction. With NuGet 2.7, we have been able to remove the explicit consent requirement by making consent the default behavior and providing a mean...

Portable Class Library (PCL) now available on all platforms

This post announces a standalone release of the .NET portable class library reference assemblies that can be used on any operating system. It was written by Rich Lander, a Program Manager on the .NET Team. Update: Read PCL and .NET NuGet Libraries are now enabled for Xamarin for later information on this release. You can build .NET apps across a wide variety of platforms, and the Portable Class Library (PCL) helps you share your code and libraries across .NET platforms. Specifically, the PCL provides a set of common reference assemblies that enable .NET libraries and binaries to be used on any .NET ba...

Introducing Web Development and Tooling TV
We are very proud to present the first episode on our brand new Channel9 show – Web Development and Tooling TV. In this episode we talk to Scott Hunter who’s a Principal Group Program Manager on the Web Team (aka the boss). Scott introduces us to this new TV show and talks about what the team has been up to lately, as well as what’s to come in the future. The content will be focused primarily around ASP.NET and Visual Studio web tooling. It’s our plan to interview a lot of the developers, testers and program managers on the team to keep you up-to-date with all the stuff we’re working on. We’ll even show some o...

SignalR and user identity (authentication and authorization)
There are too many authentication types (Basic, Windows, Cookie, OAuth) to explain how to use all of them. In this sample, I focus on using Cookie Authentication to secure a website, a Persistent Connection, and a Hub. Authentication is configured on OWIN, you have to add some nuget packages and add code in Startup.cs. I started with a web project using the MVC Template. By default, it creates web forms to register users, input user credentials, configures an anti-forgery token for http requests, creates an entity framework repository for User Identity. For the self host server there is no template, so I created ...

Securing Static Resources with Windows Azure Active Directory Authentication
Visual Studio 2013 RC has a very useful feature of creating new ASP.NET application that are configured with Windows Azure Active Directory authentication. You can read more about it hereIf you open web.config file of such project that is secured with Windows Azure Active Directory, you will see following section: Code Snippet As you might know, WSFederationAuthenticationModule is the one that is responsible for authenticating incoming requests. However, this module runs only for those requests that go through ASP.NET pipeline. To enable it for all the incoming requests, including those for static files...

Friendly License Names
Yesterday afternoon, we enabled a new feature for both the NuGet gallery and the Visual Studio client (for NuGet >= 2.7) which will display the list of license names for a package in addition to simply providing a link to the license text. The big idea behind this feature is that it will aid in the decision making process over whether or not to use a package. While displaying text such as "MIT" may seem like a trivial problem, there is a significant amount of complexity involved in determining the name from a license document. In this feature, license names are determined as a result of analyzing the license ...