Visual Studio

Welcome to the Visual Studio UserVoice site! Let us know what you would like to see in future versions of the Visual Studio suite of products. This site is for suggestions and ideas. If you need to file a bug, visit the Visual Studio Connect site: https://connect.microsoft.com/visualstudio.

We would also like to invite you to check out the Announcements section we have added to this site, where we will be posting special opportunities for you to participate in.

We look forward to hearing from you!

The Visual Studio Team
Terms of Service and Privacy Policy

NEW! Announcing Limited Preview for Visual Studio Online Code Search

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. Provide a .Net 4.5 version of core Microsoft.ApplicationInsights Package w/o Microsoft.Bcl* dependencies

    As described in my post over at the MSDN forums (see https://social.msdn.microsoft.com/Forums/vstudio/en-US/ef9705c7-bbcf-4af3-af15-bf09ff446960/unnecessary-microsoftbcl-dependency-of-microsoftapplicationinsights-nuget-package?forum=ApplicationInsights), I would like to suggest that the core 'Microsoft.ApplicationInsights' NuGet package gets a separate net45 config it its nuspec that does NOT pull in Microsoft.BCL.Async (and its dependencies).

    .Net 4.5 obviously comes with native async/await out of the box and right now the aforementioned net40 only config and its dependency not only causes my .Net 4.5 solution and projects to unnecessarily reference the Microsoft.BCL* packages, but even worse, all referencing projects are required to do the same - when building this occurs for my Test- & Azure…

    23 votes
    Vote
    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      I agree to the terms of service
      Signed in as (Sign out)
      You have left! (?) (thinking…)
      1 comment  ·  Application Insights  ·  Flag idea as inappropriate…  ·  Admin →
    • Add private scope to non nested types to make them only accessbile in same namespace or child namespace

      Assemblies addresses the physical separation of code while namespaces addresses the logical separation of code. Types can be scoped to assemblies via the internal keyword but they cannot be scoped to namespace. I propose that non-nested types can be declared private which would make them only accessible within same namespace or child namespaces (even across assemblies).

      I have assemblies that contain multiple namespaces because the functionality is always deployed together. This helps me reduce the amount of assemblies which simplifies deployment, patching, speeds up builds, speeds up visual studio, allows ngen to inline etc. However, internal types are insufficient because…

      4 votes
      Vote
      Sign in
      Check!
      (thinking…)
      Reset
      or sign in with
      • facebook
      • google
        Password icon
        I agree to the terms of service
        Signed in as (Sign out)
        You have left! (?) (thinking…)
        0 comments  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
      • C++ memory profiling

        To see what is currently comsuming a memory in a native C++ application we have to either use a console and a Windows Driver kit (umdh.exe, read https://nvharikrishna.wordpress.com/2012/07/11/umdh-a-simple-tool-for-memory-leak-detection-in-windows/ ) or a third-party tool. It would be nice to see the data directly from Visual Studio, with View Source for each allocation, with a comparison with the last snapshot etc. For memory leaks I can just exit the application and see the debug output, but to see what is consuming the memory at a specific time the VS does nothing. Please add a support for doing this directly from the Visual…

        4 votes
        Vote
        Sign in
        Check!
        (thinking…)
        Reset
        or sign in with
        • facebook
        • google
          Password icon
          I agree to the terms of service
          Signed in as (Sign out)
          You have left! (?) (thinking…)
          0 comments  ·  Diagnostics  ·  Flag idea as inappropriate…  ·  Admin →
        • 1 vote
          Vote
          Sign in
          Check!
          (thinking…)
          Reset
          or sign in with
          • facebook
          • google
            Password icon
            I agree to the terms of service
            Signed in as (Sign out)
            You have left! (?) (thinking…)
          • Set Task Remaining Hours to 0 when Status is set to Closed.

            This is request is depending on when Project Templates Editing is implemented/released in VSO.

            When I drag a Task into the Closed column on the board or set the Status to Closed the remaining hours should set to 0.

            2 votes
            Vote
            Sign in
            Check!
            (thinking…)
            Reset
            or sign in with
            • facebook
            • google
              Password icon
              I agree to the terms of service
              Signed in as (Sign out)
              You have left! (?) (thinking…)
            • VSO: When a Task is moved to Active Status the parent should be set to Active.

              This is request is depending on when Project Templates Editing is implemented/released in VSO.

              1. When I drag/set a Task from New to Active and the parent User Story/PBI is currently New then the parent Status should be set to Active otherwise it is easy to have Tasks that are Active while the User Story is still New.

              Or

              2. When any Task is Active the parent should also be Active?

              I know it will probably end up being more complicated than just setting the Status but some automation in this area would greatly help with the workflow.

              3 votes
              Vote
              Sign in
              Check!
              (thinking…)
              Reset
              or sign in with
              • facebook
              • google
                Password icon
                I agree to the terms of service
                Signed in as (Sign out)
                You have left! (?) (thinking…)
              • Create a new project type for the front-end projects (SPAs)

                SPA is becoming a new trend in web development, but Visual Studio doesn't yet support splitting web applications into two separate projects - one for the front-end (Angular, Ember, React etc.), and another one - backend code (ASP.NET Web API, SignalR etc.), yet allowing to build and run them as a single web application. The directory layout you are currently enforce to use is not suitable for SPA applications. That is one of the reasons why many web developers switch from ASP.NET development to GO and other technologies.

                It would be nice if VIsual Studio would support a directory layout…

                22 votes
                Vote
                Sign in
                Check!
                (thinking…)
                Reset
                or sign in with
                • facebook
                • google
                  Password icon
                  I agree to the terms of service
                  Signed in as (Sign out)
                  You have left! (?) (thinking…)
                  1 comment  ·  Project  ·  Flag idea as inappropriate…  ·  Admin →
                • Completely rework the RichTextBox control (make it fast, extensible, capable of handling large text)

                  - fast to initialize and load
                  - stellar performance (this is the most important part)
                  - able to handle large amounts of rich-text
                  - provide an auto-size feature
                  - better support for spell checking
                  - either add support for image editing, bullet points and tables or make it extensible so we can implement it ourselves

                  I imagine a lot can be taken from the VS2010 editor or AvalonEdit.

                  218 votes
                  Vote
                  Sign in
                  Check!
                  (thinking…)
                  Reset
                  or sign in with
                  • facebook
                  • google
                    Password icon
                    I agree to the terms of service
                    Signed in as (Sign out)
                    You have left! (?) (thinking…)
                    1 comment  ·  Windows Presentation Foundation  ·  Flag idea as inappropriate…  ·  Admin →
                  • MySQL for Visual Studio does not work in VS 2015 preview

                    Dear Sirs, looks like "MySQL for Visual Studio" does not work in VS 2015 preview (while in VS 2013 it works fine). Please, make it working in VS 2015 preview. Thanks a lot in advance!

                    Francesco Serafini.

                    11 votes
                    Vote
                    Sign in
                    Check!
                    (thinking…)
                    Reset
                    or sign in with
                    • facebook
                    • google
                      Password icon
                      I agree to the terms of service
                      Signed in as (Sign out)
                      You have left! (?) (thinking…)
                      2 comments  ·  Visual Studio Ultimate  ·  Flag idea as inappropriate…  ·  Admin →
                    • Improve SQL Server Management Studio Diagrams

                      Improve SQL Server Management Studio Database Diagrams to use modern disign (aperance) like VS Class Diagrams or EF Diagrams.

                      It is unaceptable on these days that SQL Server Managemnt Studio renders that ugly and old diagrams with those old fat lines and borders. We would love to see SQL Management Studio Generating beautiful diagrams like VS Class Diagram or EF Diagrams.

                      Also allow "Fit to print" options like CA Erwin does.

                      13 votes
                      Vote
                      Sign in
                      Check!
                      (thinking…)
                      Reset
                      or sign in with
                      • facebook
                      • google
                        Password icon
                        I agree to the terms of service
                        Signed in as (Sign out)
                        You have left! (?) (thinking…)
                        0 comments  ·  Database Projects  ·  Flag idea as inappropriate…  ·  Admin →
                      • When an assembly cannot be written at compile time, tell which process owns the assembly

                        It is pretty frustrating that sometime a zombi process keeps a handle to an assembly under development, preventing the compilation process to complete since the assembly cannot be written. In such case instead of investigating with procexp.exe, I'd like VS tells me which process owns the handle, and even better, propose to kill the concerned process, and if so,resume the compilation process.

                        3 votes
                        Vote
                        Sign in
                        Check!
                        (thinking…)
                        Reset
                        or sign in with
                        • facebook
                        • google
                          Password icon
                          I agree to the terms of service
                          Signed in as (Sign out)
                          You have left! (?) (thinking…)
                          0 comments  ·  General  ·  Flag idea as inappropriate…  ·  Admin →
                        • Support rich debugging of F# scripts

                          F# developers love the low-overhead, iterative REPL experience they have today, but when scripts become larger and more complex, they become difficult to debug. There is no interaction whatsoever today between Editor + F# Interactive and the VS Ddbugger. Thus to debug complex scripts, devs must resort to one of:

                          - `printf` debugging
                          - Create a console app, paste in script code, F5-debug the console app

                          It would be much nicer if we could have the VS debugger participate in the F# script workflow directly.

                          7 votes
                          Vote
                          Sign in
                          Check!
                          (thinking…)
                          Reset
                          or sign in with
                          • facebook
                          • google
                            Password icon
                            I agree to the terms of service
                            Signed in as (Sign out)
                            You have left! (?) (thinking…)
                            0 comments  ·  Languages - F# Tools  ·  Flag idea as inappropriate…  ·  Admin →
                          • try-catch "ignore" (or resume, ...) option for catch(ExceptionType) blocks

                            In catch block, support an option to ignore (i.e. resume code in the try block) for specific exceptions. This suggestion is not tied to any particular syntax. Here are two possibilities:

                            try
                            {
                            A();
                            B(); // B() will throw OurSystem.SpuriousException
                            C();
                            D();
                            }
                            catch (OurSystem.SpuriousException X)
                            {
                            if (X.SomeProperty == Error.WeDontCare)

                            ignore; // THIS IS MY SUGGESTION - would resume at "C();"

                            }
                            catch (System.Exception ex)
                            {
                            // process "ex" - this is a "real" exception
                            }

                            or:

                            try (ignore OurSystem.SpuriousException)
                            {
                            // this wouldn't allow any if/else logic, though
                            }

                            1 vote
                            Vote
                            Sign in
                            Check!
                            (thinking…)
                            Reset
                            or sign in with
                            • facebook
                            • google
                              Password icon
                              I agree to the terms of service
                              Signed in as (Sign out)
                              You have left! (?) (thinking…)
                              2 comments  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                            • Colorize output in output window

                              I'm using the VSColorOutput extension for this at the moment (see https://visualstudiogallery.msdn.microsoft.com/f4d9c2b5-d6d7-4543-a7a5-2d7ebabc2496); unfortunately, it is somewhat buggy. In any case, I think this is such a basic functionality that it should be built in. Once you get used to colorized output, you can't live with the "white wall of text" anymore of vanilla VS.

                              Features:
                              - Colorize build output, such that, for instance, errors are red and warnings are yellow.
                              - Colorize application output based on configurable keywords; for instance, rules like "when the output starts with [Error], print it in red".

                              6 votes
                              Vote
                              Sign in
                              Check!
                              (thinking…)
                              Reset
                              or sign in with
                              • facebook
                              • google
                                Password icon
                                I agree to the terms of service
                                Signed in as (Sign out)
                                You have left! (?) (thinking…)
                                0 comments  ·  User Interface  ·  Flag idea as inappropriate…  ·  Admin →
                              • Data Breakpoints

                                So, Intel Visual Fortran, formerly Compaq Visual Fortran, is an add-in for Visual Studio, and it uses the C++ Debugger. Version 6 of CVF had some nice features that increase productivity TREMENDOUSLY, and that have disappeared as of Visual Studio 2010/2013. According to Intel, this is because the same limitation exists in Visual C++/Debugger. These are all related to data breakpoints. Please fix these things!

                                -First issue: How do we show variable names for data breakpoints, rather than memory addresses; that is, show it as, for example PPS, not 0x12345678. When we add many data breakpoints, it is very difficult…

                                3 votes
                                Vote
                                Sign in
                                Check!
                                (thinking…)
                                Reset
                                or sign in with
                                • facebook
                                • google
                                  Password icon
                                  I agree to the terms of service
                                  Signed in as (Sign out)
                                  You have left! (?) (thinking…)
                                  0 comments  ·  Debugger  ·  Flag idea as inappropriate…  ·  Admin →
                                • Automatically Select Startup Project

                                  If there are multiple projects, and only one is an executable, I think it is reasonable to take a guess that this is the start up project. It is painful every time you get a new branch/clean checkout from source control you have to go through the step of finding it and setting it. This has niggled me since 2002!

                                  5 votes
                                  Vote
                                  Sign in
                                  Check!
                                  (thinking…)
                                  Reset
                                  or sign in with
                                  • facebook
                                  • google
                                    Password icon
                                    I agree to the terms of service
                                    Signed in as (Sign out)
                                    You have left! (?) (thinking…)
                                    0 comments  ·  IDE  ·  Flag idea as inappropriate…  ·  Admin →
                                  • Give native support to Json to ado.net like XML.

                                    Json is more lightweight presentation than XML. If we give ado.net native support like XML, we can make many improvement for .net data related product and give WCF another new era. We can make WCF more lightweight and gain the performance giant improvement. Thanks.

                                    3 votes
                                    Vote
                                    Sign in
                                    Check!
                                    (thinking…)
                                    Reset
                                    or sign in with
                                    • facebook
                                    • google
                                      Password icon
                                      I agree to the terms of service
                                      Signed in as (Sign out)
                                      You have left! (?) (thinking…)
                                      1 comment  ·  Database Projects  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Automatically insert parenthesis for function/method calls in C++

                                      If I want to call a function/method in C++ my normal way is to type the first letters of the name and investigate the IntelliSense suggestions. If I choose one, the name will be inserted, but it would be great if also the parenthesis (and maybe the conluding semicolon) could be inserted.
                                      Of course the caret should be placed in the middle of the new parenthesis.

                                      So for example if I type
                                      std::string s;
                                      s.em
                                      the result after the use of IntelliSense should be
                                      std::string s;
                                      s.empty(_CARET_);

                                      3 votes
                                      Vote
                                      Sign in
                                      Check!
                                      (thinking…)
                                      Reset
                                      or sign in with
                                      • facebook
                                      • google
                                        Password icon
                                        I agree to the terms of service
                                        Signed in as (Sign out)
                                        You have left! (?) (thinking…)
                                        1 comment  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Add a 'MustUse' attribute usable for the 'return' target, to indicate the return value of a method must be used

                                        [return:MustUse]
                                        Action Foo(int param) {
                                        return () => { Debug.WriteLine(param.ToString()); };
                                        }

                                        Foo(5);

                                        Would generate the warning/error

                                        return value is never used

                                        Reason not to use 'out': the code size would increase by a considerable amount, and the readability would decrease.

                                        6 votes
                                        Vote
                                        Sign in
                                        Check!
                                        (thinking…)
                                        Reset
                                        or sign in with
                                        • facebook
                                        • google
                                          Password icon
                                          I agree to the terms of service
                                          Signed in as (Sign out)
                                          You have left! (?) (thinking…)
                                          0 comments  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                                        • Improve WPF 3D

                                          In general, simply invest in improving the 3D framework. Specifically, add the ability (for users) to create and instantiate high level 3D elements in xaml (e.g. allow Cube, Cylinder, Sphere, etc. to be "native" WPF objects).

                                          666 votes
                                          Vote
                                          Sign in
                                          Check!
                                          (thinking…)
                                          Reset
                                          or sign in with
                                          • facebook
                                          • google
                                            Password icon
                                            I agree to the terms of service
                                            Signed in as (Sign out)
                                            You have left! (?) (thinking…)
                                            1 comment  ·  Windows Presentation Foundation  ·  Flag idea as inappropriate…  ·  Admin →
                                          • Don't see your idea?

                                          Feedback and Knowledge Base