Future blogs on Visual Basic can be found on the official .NET blog going forward.
Visual Basic Blog
A group blog from members of the VB team
Latest posts

Visual Basic support planned for .NET 5.0

We’ve heard your feedback that you want Visual Basic on .NET Core. Visual Basic in .NET 5 will support additional application types.

Visual Basic in .NET Core 3.0
Visual Basic in .NET Core 3 Update: March 12, 2020This strategy described in this 2018 post has been replaced with the one in this post.Update: Oct 8, 2019.NET Core 3.0 contains portions of the Visual Basic.NET Runtime (microsoft.visualbasic.dll) that do not depend on WinForms.Visual Basic.NET support for WinForms, WPF, and other application types in .NET Core 3.0 is similar to C#. Special features of the Visual Basic.NET Runtime (microsoft.visualbasic.dll) are not in .NET Core 3.0. As an example, application startup using application models are not supported. Visual Basic.NET desktop templates...

Combining Angular, Visual Basic and .NET Core for developing modern web apps
Visual Basic supports .NET Core starting in Visual Studio 2017 Update 3 (15.3). This opens new possibilities for new applications and modernizing existing applications. Preserving domain-specific code when modernizing applications allows step-wise conversions, decreases cost, and avoids disruptions.This post covers using Visual Basic ASP.NET Core WebAPI for the back end, along with a new TypeScript and Angular front end. Working in Visual Basic lets you work in your favorite language and reuse existing business logic. The TypeScript/Angular front end provides a responsive SPA (single-page-application) user inter...

Roslyn Primer – Part I: Anatomy of a Compiler
So, you’ve heard that VB (and C#) are open source now and you want to dive in and contribute. If you haven’t spent your life building compilers, you probably don’t know where to start. No worries, I’ll walk you through it. This post is the first of a series of blog posts focused on the Roslyn codebase. They’re intended as a primer for prototyping language features proposed on the VB Language Design repo; and contributing compiler and IDE features, and bug fixes on the Roslyn repo, both on GitHub. Despite the topic, these posts are written from the perspective of someone who’s never taken a course in compilers (I ...

Dependency Injection with Visual Basic .NET – Part 2 – IoC Containers
This post was authored by guest blogger André Obelink, a Visual Basic MVP, and published by the VBTeam on his behalf.In my previous post, I wrote about the basics of dependency injection. I explained the technique to define an interface and injecting the dependencies to a client object. These dependencies contain the real implementation of that specific interface. Applying dependency injection makes your code more loosely coupled, which helps you in maintaining, extending, and testing your codebase. The example we ended up with works fine, but it can still be improved for some scenarios. In this post I will sho...

Dependency Injection with Visual Basic .NET – Part 1
This post was authored by guest blogger André Obelink, a Visual Basic MVP, and published by the VBTeam on his behalf.In this first blog post of a series of two, I explain what dependency injection (DI) is and why you might want to use this design principle in your software. The target audience of this post is the junior / medium experienced software developer, with no knowledge of dependency injection or related techniques. In the second post, I’ll describe the use of Inversion of Control Containers (IoC containers), to use dependency injection in a much more flexible way.What is dependency injection?Dependenc...

New for Visual Basic: .NET Standard Class Libraries and the dotnet CLI!
Visual Studio 2017 15.3 Preview 1 included templates for VB class libraries targeting .NET Standard class libraries and for .NET Core console apps. With the release of .NET Core 2.0 today those templates go-live. The .NET StandardYou can use the built-in templates to create cross-platform command-line apps, as well as creating and testing cross-platform VB libraries targeting the new .NET Standard. When you target a version of the .NET Standard you get access to all the APIs included in that version of the standard. You can then use that single library in any app targeting a platform that supports that version...

Visual Basic and Cross-Platform: Mobile Apps with VB, Xamarin, and .NET Standard!
How would you like it if you could create a Console App in Visual Basic and run it on Linux? Or running the same Xamarin.Forms-App written in Visual Basic on an iPhone, and Android and a Windows Tablet? Welcome to the world of cross-platform development, which from Visual Studio 2017 Update 3 on – thanks to .NET Standard and .NET Core – is now also available for Visual Basic! Well, currently the preview of Visual Studio 2017 lets you use this, and it is the best set of features that Update 3 (aka VS 15.3) will bring for us VBs: We are getting Visual Basic .NET Core and .NET Standard templates. Note though, that t...
![Introduction to (Live) Unit Testing in Visual Basic… [updated for VS 2017 Update 3 Preview 3]](/image.pl?url=https%3a%2f%2fdevblogs.microsoft.com%2fvbteam%2fwp-content%2fuploads%2fsites%2f7%2f2018%2f08%2fvbasicfeature.png&f=jpg&w=240)
Introduction to (Live) Unit Testing in Visual Basic… [updated for VS 2017 Update 3 Preview 3]
...and Why My Grandma Invented the Concept!Meet late Grandma Grete Schindler. I'd like to introduce you to my grandma, because this post will be about the essence and purpose of unit testing in Visual Basic, and Granny Grete basically invented the concept of unit testing. Yes, she really did, I kid you not – she was a very wise woman! When she saw someone in our family doing their work in a hectic rather than a thoughtful way, she always quoted her most favorite Silesian proverb: “Kinder, schmeißt nicht mit dem Hintern um, was ihr mühsam mit den Händen aufgebaut habt” – which roughly translates to “Kids, ...
- March 2020
- November 2018
- June 2018
- October 2017
- September 2017
- August 2017
- June 2017
- May 2017
- April 2017
- March 2017
- February 2017
- January 2017
- May 2015
- April 2015
- February 2015
- January 2015
- December 2014
- November 2014
- June 2014
- May 2014
- April 2014
- January 2014
- December 2013
- July 2013
- September 2012
- June 2012
- May 2012
- April 2012
- February 2012
- December 2011
- November 2011
- October 2011
- September 2011
- August 2011
- June 2011
- May 2011
- April 2011
- March 2011
- February 2011
- January 2011
- December 2010
- November 2010
- October 2010
- September 2010
- June 2010
- May 2010
- April 2010
- March 2010
- February 2010
- January 2010
- December 2009
- November 2009
- October 2009
- September 2009
- August 2009
- July 2009
- June 2009
- May 2009
- April 2009
- March 2009
- February 2009
- January 2009
- December 2008
- November 2008
- October 2008
- September 2008
- August 2008
- July 2008
- June 2008
- May 2008
- April 2008
- March 2008
- February 2008
- January 2008
- December 2007
- November 2007
- October 2007
- September 2007
- August 2007
- July 2007
- June 2007
- May 2007
- April 2007
- March 2007
- February 2007
- January 2007
- November 2006
- October 2006
- September 2006
- July 2006
- June 2006
- April 2006
- March 2006
- January 2006
- December 2005
- November 2005
- October 2005
- September 2005
- July 2005
- June 2005
- May 2005
- April 2005
- March 2005
- January 2005
- November 2004
- October 2004
- September 2004
- August 2004
- July 2004
- June 2004
- May 2004
