Visual Studio IDE

Announcement: This forum has been migrated to provide our customers one convenient and responsive system for all feedback. You can now suggest new ideas, browse and vote on existing ideas in the Visual Studio Developer Community. To learn more about the migration to Visual Studio Developer Community please check out the release blog post.

We’d like your suggestions and ideas to help us continuously improve future releases of Visual Studio, so we’ve partnered with UserVoice, a third-party service, to collect your feedback. Please do not send any novel or patentable ideas, copyrighted materials, samples or demos for which you do not want to grant a license to Microsoft.

This site is for feature suggestions; if you need to file a bug, you can visit our Developer Community website to get started.

Note: your use of the portal and your submission is subject to the UserVoice Terms of Service & Privacy Policy and license terms.

We look forward to hearing from you!
- The Visual Studio Team

I suggest you ...

You've used all your votes and won't be able to post a new idea, but you can still search and comment on existing ideas.

There are two ways to get more votes:

  • When an admin closes an idea you've voted on, you'll get your votes back from that idea.
  • You can remove your votes from an open idea you support.
  • To see ideas you have already voted on, select the "My feedback" filter and select "My open ideas".
(thinking…)

Enter your idea and we'll search to see if someone has already suggested it.

If a similar idea already exists, you can support and comment on it.

If it doesn't exist, you can post your idea so others can support it.

Enter your idea and we'll search to see if someone has already suggested it.

  • Hot ideas
  • Top ideas
  • New ideas
  • My feedback
  1. Allow .NET games on Xbox One

    Yesterday was announced that Xbox One will allow indie developer to easily publish games on Xbox One.

    Lots of indie developers and small game company are using .NET to develop games. Today, we are able to easily target several Windows platforms (Windows Desktop, Windows RT and Windows Phone 8) as well as other platforms thanks to Mono from Xamarin.

    As we don't know yet the details about this indie developer program for Xbox One, we would love to use .NET on this platform - with everything accessible, from latest 4.5 with async, to unsafe code and native code access through…

    16,315 votes
    Vote
    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      Signed in as (Sign out)
      You have left! (?) (thinking…)
      295 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →

      Thanks for your feedback! As we announced at //BUILD/, we are excited to enable all developers to be able to build Universal Windows apps and games using .NET that will run on Xbox One. We released a developer preview for Xbox with this support at //BUILD/ that many of you have already used to build or test your Universal Windows apps and games on Xbox. We are gearing up towards making this available in its final form later this Summer, and are looking forward to seeing all of the great apps and games that you are building for Xbox!

      You don’t need to be an ID@XBOX developer to experiment, create, and test games or apps on Xbox One, but you do need to enroll with ID@XBOX if you want to publish and sell a game on Xbox One or take advantage of Xbox Live on…

    • Remove the platform restriction on Microsoft NuGet packages

      In short, we're customers of .NET, but we are building apps that also target multiple platforms. Likewise, we release a lot of open source libraries.

      We cannot take a dependency on the recently released Immutable Collections for example.

      For a more detailed description on why this is good for .NET and good for Microsoft, see: http://haacked.com/archive/2013/06/24/platform-limitations-harm-net.aspx

      4,900 votes
      Vote
      Sign in
      Check!
      (thinking…)
      Reset
      or sign in with
      • facebook
      • google
        Password icon
        Signed in as (Sign out)
        You have left! (?) (thinking…)
        32 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →

        Thanks a lot for this suggestion and all the votes.

        We’re happy to announce that we’ve removed the Windows-only restriction from our license. We’ve applied this new license to most of our packages and will continue to use this license moving forward.

        Here is our announcement:

        http://blogs.msdn.com/b/dotnet/archive/2013/11/13/pcl-and-net-nuget-libraries-are-now-enabled-for-xamarin.aspx

        For reference, the license for stable packages can be found here:

        http://go.microsoft.com/fwlink/?LinkId=329770

        Thanks,
        Immo Landwerth
        Program Manager, .NET Framework Team

      • Support .NET Builds without requiring Visual Studio on the server

        To build certain PCL libraries and libraries for Windows 8 RT requires having Visual Studio on the server.

        Nick Berardi writes about a workaround that allows running a build server without VS, but it's really just a workaround for functionality that should be easy.

        Not to mention there's probably licensing considerations we're just ignoring by doing that.

        http://nickberardi.com/a-net-build-server-without-visual-studio/

        Please make it easy (and legal) to build .NET projects on a server without requiring a Visual Studio installation (or license) on that server.

        4,482 votes
        Vote
        Sign in
        Check!
        (thinking…)
        Reset
        or sign in with
        • facebook
        • google
          Password icon
          Signed in as (Sign out)
          You have left! (?) (thinking…)
          36 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →

          Thank you for your feedback, and your overwhelming support for this feature.

          To support the creation of more lightweight build servers, we now have made available Visual Studio 2017 Build Tools (https://www.visualstudio.com/downloads/#build-tools-for-visual-studio-2017-rc). This release allows you to build native and managed MSBuild-based projects without requiring the Visual Studio IDE. By default (that is without selecting any workload options) the Build Tools provides support for managed projects. You can also optionally install the Visual C++ compilers and libraries, MFC, ATL, and C++/CLI support.

          While Visual Studio 2017 has not yet RTM’d, we’re marking this User Voice suggestion as “Completed”, and we will continue to update the Visual Studio 2017 Build Tools as we provide updates to Visual Studio 2017.

          If you have additional capabilities that you would like to see included with the Visual Studio Build Tools, please create a new User Voice entry so…

        • Better NullPointerException Error message

          Let's say you have the line

          a.b().c().d().e().f().g();

          and you run it and get an
          System.NullReferenceException: Object reference not set to an instance of an object.

          Where did this happen? what do you need to fix?

          A better error message would be

          The Call: null.e()
          Caused a Null Reference Exception

          this would make debug/life a lot easier.

          I would also suggest you use the full method signature so you might get

          The Call: null.e(string, List<string>)

          3,003 votes
          Vote
          Sign in
          Check!
          (thinking…)
          Reset
          or sign in with
          • facebook
          • google
            Password icon
            Signed in as (Sign out)
            You have left! (?) (thinking…)
            39 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
          • Allow developers to step through .NET Framework sources

            Microsoft currently makes reference sources available for major .NET Framework releases. You can use this source in Visual Studio so that you can step through .NET Framework code, like List<T>. That’s very useful in some situations. Unfortunately, .NET Framework servicing updates and small changes to the .NET Framework (like via: Windows Update) break this experience. Let us know if you use this feature and if you want us to fix it such that you can count on it across the lifetime of a .NET Framework release.

            2,965 votes
            Vote
            Sign in
            Check!
            (thinking…)
            Reset
            or sign in with
            • facebook
            • google
              Password icon
              Signed in as (Sign out)
              You have left! (?) (thinking…)
              63 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →

              Today, we’re happy to announce that we’ve fixed this issue. We’ve also added a few more features, such as an online browsing experience as well as an option to download and browse the entire reference source with Visual Studio.

              Check out our blog post that announces the improved .NET Reference Source experience:

              http://blogs.msdn.com/b/dotnet/archive/2014/02/24/a-new-look-for-net-reference-source.aspx

              Thanks,
              Alok Shriram
              .NET Framework Team

            • 1,875 votes
              Vote
              Sign in
              Check!
              (thinking…)
              Reset
              or sign in with
              • facebook
              • google
                Password icon
                Signed in as (Sign out)
                You have left! (?) (thinking…)
                63 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
              • Open source Roslyn

                Roslyn is a fantastic project and we are looking forward for its release. Unfortunately, it seems that by design, the project is not going to provide any plugin infrastructure/extension points for the parser.

                Fully open-sourcing the whole Roslyn Project would allow lots of people to learn its compiler architecture, to experiment new language constructions, develop custom DSL on top of C# or even contribute to the future of C#/VB. For example, the Typescript language has taken this route and it seems so far a great success.

                In the era of LLVM/Clang where compiler pipelines are fully accessible and modifiable, having…

                1,351 votes
                Vote
                Sign in
                Check!
                (thinking…)
                Reset
                or sign in with
                • facebook
                • google
                  Password icon
                  Signed in as (Sign out)
                  You have left! (?) (thinking…)
                  16 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                • Native .Net Compiler

                  possibility to compile C# (for example) code to native .exe included framework library inside assembly (here more correctly - .exe)

                  379 votes
                  Vote
                  Sign in
                  Check!
                  (thinking…)
                  Reset
                  or sign in with
                  • facebook
                  • google
                    Password icon
                    Signed in as (Sign out)
                    You have left! (?) (thinking…)
                    15 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                  • Add the ability to create portable libraries in Visual Studio Express editions

                    (Filed on behalf on a customer)

                    Users are able to consume portable libraries in the Express editions of Visual Studio, but unable to create them. Please add them to the express editions.

                    285 votes
                    Vote
                    Sign in
                    Check!
                    (thinking…)
                    Reset
                    or sign in with
                    • facebook
                    • google
                      Password icon
                      Signed in as (Sign out)
                      You have left! (?) (thinking…)
                      8 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →

                      Thanks for the suggestion. We’re happy to announce that portable class libraries are now also being made available through Visual Studio Express for Windows. In case you try out the RC: there is currently a bug that prevents you from targeting .NET 4/4.0.3 and Silverlight 5. We plan on fixing this for RTM.

                      Immo Landwerth
                      Program Manager
                      .NET Framework Team

                    • Support async in Portable Class Libraries

                      With async beeing one of the main features of C# 5 and .NET 4.5 and with async beeing availible for .NET , Silverlight 5 , Metro applications as well as windows phone it feels .strange that it should be usable for portable libraries.

                      Note: You can use Task in VS11 beta if you target .Net 4.5 and Silverlight 5, but when you use the away keyword you get the error:

                      "Cannot find all types required by the 'async' modifier. Are you targeting the wrong framework version, or missing a reference to an assembly?"

                      122 votes
                      Vote
                      Sign in
                      Check!
                      (thinking…)
                      Reset
                      or sign in with
                      • facebook
                      • google
                        Password icon
                        Signed in as (Sign out)
                        You have left! (?) (thinking…)
                        4 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                      • Client Profile should not be the default framework

                        Let the developer choose if they want client profile. There are more projects that require full .NETFx and just client profile.

                        Enable better warnings when a project is set to client profile but actually needs full .NETFx

                        If you really want to enable more client profile usage then setup a build warning indicating that you 'could be using client profile'

                        93 votes
                        Vote
                        Sign in
                        Check!
                        (thinking…)
                        Reset
                        or sign in with
                        • facebook
                        • google
                          Password icon
                          Signed in as (Sign out)
                          You have left! (?) (thinking…)
                          2 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →

                          Thanks for the great suggestion. We’ve made three changes in .NET Framework 4.5 and Visual Studio 2012 in response to this:

                          1) Starting in .NET Framework 4.5, there is no more “client profile”.

                          2) When targeting previous versions of .NET (3.5 & 4.0), the default is now the full framework and not the client profile. Users wanting to retarget to the client profile can do so via the Target framework drop down in the project properties.

                          3) The default for executable projects is now Any CPU and not x86. Class library projects remain the same as the previous version (Any CPU).

                          Thanks

                          David Kean
                          CLR Team

                        • readonly array

                          .NET needs a 'ReadOnlyArray<T>' type.

                          It would behave like array, but not allow setting values. It would have a constructor/initializer that takes an array, which it clones, or takes a Func<int,T>, which it calls for 0..N-1 to initialize the values.

                          The problem with ReadOnlyCollection is that it wraps an underlying collection, which may be mutable, and thus offers no guarantees. If you want to 'share' a read-only array today across the boundary of two third-party components which do not 'trust' one another to not expose weird bugs/behavior, the only way it to expose a (mutable) array at the interface, and…

                          52 votes
                          Vote
                          Sign in
                          Check!
                          (thinking…)
                          Reset
                          or sign in with
                          • facebook
                          • google
                            Password icon
                            Signed in as (Sign out)
                            You have left! (?) (thinking…)
                            4 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                          • Microsoft TPL Dataflow for Windows Phone

                            Filing on behalf of our customers (http://stackoverflow.com/questions/20705043/microsoft-tpl-dataflow-for-windows-phone):

                            As we know Microsoft TPL Dataflow supports platforms:
                            •.NET Framework 4.5
                            •.NET for Windows Store apps
                            •Portable Class Libraries

                            but there is NO Windows Phone 8 support.

                            What are the alternatives to replace BufferBlock<>, etc.?

                            28 votes
                            Vote
                            Sign in
                            Check!
                            (thinking…)
                            Reset
                            or sign in with
                            • facebook
                            • google
                              Password icon
                              Signed in as (Sign out)
                              You have left! (?) (thinking…)
                              1 comment  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                            • Support INotifyPropertyChanged (and other types) in Portable Class Library target

                              INotifyPropertyChanged interface is available in two different namespaces: System.ComponentModel for .net and Windows.UI.Xaml.Data for WinRT.
                              I do understand that two different interfaces must exist as the WinRT world is COM based and is projected to other languages.

                              It's very strategic to be able to port across several platform classes that implement basic interfaces such as INotifyPropertyChanged. Without this interface tons of code would be "lost" and unportable.

                              The solution would be to use type equivalence from CLRv4 to make the two interfaces "equivalent" assigning the same guid.
                              This would mean that the same code the use the INPC would be…

                              19 votes
                              Vote
                              Sign in
                              Check!
                              (thinking…)
                              Reset
                              or sign in with
                              • facebook
                              • google
                                Password icon
                                Signed in as (Sign out)
                                You have left! (?) (thinking…)
                                2 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                              • LOH compaction

                                It is an absolute disgrace that LOH compaction is not included in the CLR (GC). Please make every effort to include this feature in future versions

                                18 votes
                                Vote
                                Sign in
                                Check!
                                (thinking…)
                                Reset
                                or sign in with
                                • facebook
                                • google
                                  Password icon
                                  Signed in as (Sign out)
                                  You have left! (?) (thinking…)
                                  2 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                                • update .net framework to latest version with windows update

                                  Why can't the .NET Framework be updated automatically to the latest version with Windows Update? That way nobody has to worry about having the correct version installed on their machine.

                                  18 votes
                                  Vote
                                  Sign in
                                  Check!
                                  (thinking…)
                                  Reset
                                  or sign in with
                                  • facebook
                                  • google
                                    Password icon
                                    Signed in as (Sign out)
                                    You have left! (?) (thinking…)
                                    completed  ·  5 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                                  • Simplify asynchronous WCF service contracts with TPL

                                    Now async services are defined like this:

                                    [ServiceContract]
                                    interface IService
                                    {
                                    [OperationContract(AsyncPattern = true)]
                                    IAsyncResult BeginDoWork(AsyncCallback callback, object state)

                                    string EndDoWork(IAsyncResult result)
                                    }

                                    It would be nice this would be enough:

                                    [ServiceContract]
                                    interface IService
                                    {
                                    [OperationContract(AsyncPattern = true)]
                                    Task<string> DoWork()
                                    }

                                    13 votes
                                    Vote
                                    Sign in
                                    Check!
                                    (thinking…)
                                    Reset
                                    or sign in with
                                    • facebook
                                    • google
                                      Password icon
                                      Signed in as (Sign out)
                                      You have left! (?) (thinking…)
                                      0 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Make JoinableTaskFactory available outside of VisualStudio

                                      Microsoft.VisualStudio.Threading.JoinableTaskFactory is in incredibly useful tool for bridging non async aware code forward into the new world of async. Without it or something like it, it can require huge amounts of change in order to migrate code forward without causing a nightmare scenario of deadlocks, hangs and poor responsiveness.

                                      10 votes
                                      Vote
                                      Sign in
                                      Check!
                                      (thinking…)
                                      Reset
                                      or sign in with
                                      • facebook
                                      • google
                                        Password icon
                                        Signed in as (Sign out)
                                        You have left! (?) (thinking…)
                                        2 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Make .NET Open Source

                                        Like you did with ASP.NET Stack and most recently Entity Framework http://data.uservoice.com/forums/72025-entity-framework-feature-suggestions/suggestions/2858489-make-it-open-source

                                        Would be wonderful open most of .NET BCL, CLR and even JIT. Not just open source, but licensed with a Apache License or similar, so we can really say that .NET is portable

                                        9 votes
                                        Vote
                                        Sign in
                                        Check!
                                        (thinking…)
                                        Reset
                                        or sign in with
                                        • facebook
                                        • google
                                          Password icon
                                          Signed in as (Sign out)
                                          You have left! (?) (thinking…)
                                          3 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                                        • Visual Studio Cross-Platform Build Tools (IOS - Android - Mac - ... )

                                          Visual Studio Cross-Platform Build Tools (IOS - Android - Mac - ... )

                                          8 votes
                                          Vote
                                          Sign in
                                          Check!
                                          (thinking…)
                                          Reset
                                          or sign in with
                                          • facebook
                                          • google
                                            Password icon
                                            Signed in as (Sign out)
                                            You have left! (?) (thinking…)
                                            0 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →

                                            The Visual Studio 2017 Build Tools, starting with version 15.7, now support command-line build for most Visual Studio projects. Supported projects include: ASP.NET, Azure, C++ desktop, ClickOnce, containers,.NET Core, .NET Desktop, Node.js, Office and SharePoint, Python, TypeScript, Unit Tests, UWP, WCF, and Xamarin. We expect to add support for SQL in a future release. You can download the Visual Studio Build Tools from https://www.visualstudio.com/downloads/#build-tools-for-visual-studio-2017. (Note that the Build Tools requires a license to Visual Studio 2017.)

                                          ← Previous 1

                                          Feedback and Knowledge Base